Проверка , отправился ли е-мейл

Nick88Hello

Новичок
Здравствуйте ! Необходимо сделать следующее : при отправке заполненной е-мейл формы проверить : успешно ли отправилось сообщение . И в зависимости от этого выводить сообщения , если успешно - "Ваше сообщ. отправлено" . А если нет "произошла ошибка" .

Нужно ли здесь проверять код ответа сервера (если например !=200 то ошибка) ?

Или использовать обработчик исключений и проверять есть ли в глобальном массиве $errors какие-то данноые ?

Еще какие есть варианты...
 

Фанат

oncle terrible
Команда форума
Код ответа сервера совсем не гарантирует того, что сообщение успешно отправилось.

Обычно такая проверка не имеет смысла, поскольку SMTP сервер всегда свой, и письма он по умолчанию принимает.
А вот сервер получателя как раз вполне может и отвергнуть.

В общем, для чего конкретно это нужно? Какая задача требует такой проверки?
 

Nick88Hello

Новичок
Просто хочу усовершенствовать скрипт отправки емейл , о котором прочитал в книге . Я посчитал , что включить данную проверку в скрипт было бы более грамотным решением . Но раз вы говорите , что это лишено смысла...
 

Redjik

Джедай-мастер
Мне тоже интересен этот вопрос, но мне кажется, что невозможно без парсинга узнать, дошло письмо или нет.

Зачем нужно?
На сайте стоит input - подпись на рассылки кто хочет. Никакого подтверждения через почту.
Хочется исключить несуществующие адреса, когда gmail ругется, что письмо не было доставлено.
 

Фанат

oncle terrible
Команда форума
Если в скрипте используется обычная функция mail, то она возвращает false в случае неудачи.
Можно это и проверять.
Но, скорее всего, сообщение "произошла ошибка" пользователь никогда не увидит.
 

Redjik

Джедай-мастер
Ну как то же
[email protected] - Technical details of temporary failure: DNS Error: Domain name not found
хотя домены можно самому предварительно проверять, или тоже демона запустить... точно =))) придумал.
 

Фанат

oncle terrible
Команда форума
Иван Redjik Матвеев
Это всё придумывали уже 100500 лет назад. можешь поискать по форуму по слову getmxrr
И тогда же 100500 лет назад от этого отказались - эффективность проверки мх записи стремится к нулю, единственный эффективный способ проверить валидность емейла - подтвердить его.
 

radioheaded

PHP нуб
Есть смысл делать только 2 вещи: проверять успешность отправки (не получения той стороной, а отправки нами, это умеет делать любая нормальная либа), и парсить отбойники (это можно написать самому, либо поискать что-то готовое).
 

Redjik

Джедай-мастер
radioheaded
ну я и предполагал, что только парсингом можно - прескорбно
 
Сверху