Проблема с mail()

Эдди

Новичок
Странное дело. Раньше такого не было.

Простейший скрипт берет из БД электронные адреса и рассылает в цикле подписчикам (не спам).
На монитор выводится построчно адрес и, в зависимости от успеха или нет, ОК или ERROR.

Понятно, что некоторые письмо потом возвращаются. over quata или несуществующий адрес.

Так вот в последнее время уже во время отправки на каждые, скажем, 20 успешных "отправок" приходится две-три ERROR.

Вопрос состоит в том, это кривой скрипт? (раньше работал нормально)
Разве могут за миллисекунды возвращаться письма и давать функции mail ошибку?
Функция ведь отработала нормально.
А вернулось письмо или нет - не ее дело.
Или я ошибаюсь?
 

hell0w0rd

Продвинутый новичок
Что за скрипт? А вообще попробуйте вместо своего скрипта использовать готовые библиотеки, вот на пример https://github.com/swiftmailer/swiftmailer
Думаю там сообщения будут информативнее, почему конкретно отправка не удалась
 

Эдди

Новичок
Не люблю готовые. Люблю свои, где я могу каждую бокАвку исправить.
Только вот дал сбой.
 

hell0w0rd

Продвинутый новичок
Не люблю готовые. Люблю свои, где я могу каждую бокАвку исправить.
Только вот дал сбой.
Чтобы быть уверенным в качестве и отсутсвии багов - люди покрывают код тестами:) Полагаю ваш код ими не покрыт, а по моей ссылке - покрыт. Можете найти еще решения, запустить тесты и проверить, или написать тесты на свои - и выявить ошибки)
 

Эдди

Новичок
Только вопрос не в скрипте.
А может ли функция mail() давать ошибку, если адреса получателя, скажем, не существует?
 

hell0w0rd

Продвинутый новичок
Только вопрос не в скрипте.
А может ли функция mail() давать ошибку, если адреса получателя, скажем, не существует?
Замечание:

Не следует использовать функцию mail() для отправки большого количества писем в цикле. Функция открывает и закрывает соединение с SMTP-сервером для каждого письма, что не очень эффективно.

Для отправки большого количества сообщений обратите внимание на пакеты » PEAR::Mail и » PEAR::Mail_Queue.
 

Эдди

Новичок
Дорогие мои пэхапешники. Можно ответить на вопрос. Я ведь не спрашиваю, как сделать иначе.
А вопрос суперпростой:
А может ли функция mail() давать ошибку, если адреса получателя, скажем, не существует?
 
Сверху