Я пытаюсь отправить электронное письмо через PHP с помощью PEAR Mail, но, несмотря на то, что страница сообщает о том, что почта отправлена, она никогда не приходит (я отправляю ее для тестирования) ,PEAR Mail не отправляет, но также не сообщает об ошибке
Я исследовал, как обрабатывать ошибки и если я включаю строгую отчетность, я получаю около полторы десятков докладов этим:
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in Blah Blah Blah! on line 450
Strict Standards: Non-static method PEAR::raiseError() should not be called statically, assuming $this from incompatible context in Blah Blah Blah! on line 451
В моем чтении я сказала, что эти ошибки не остановить сценарий от успеха и что большинство людей просто оставляют строгие отчеты, однако в моем случае скрипт не работает.
Я попытался следующие методы, чтобы поймать ошибку ...
try {
$host = "ssl://mail.example.com";
$port = 25;
$auth = true; // turn on SMTP authentication
$username = "[email protected]"; // SMTP username
$password = "password"; // SMTP password
$mail = Mail::factory('smtp',
array('host'=>$host,'port'=>$port,'auth'=>true,'username'=>$username,'password'=>$password));
$mail->send($to,$headers,$message);
} catch (Exception $e) {
echo "Exception: " . $e->getMessage();
}
echo "Message Successfully Sent!";
А также без попытке поймать и просто используя ...
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
В обоих случаях отчеты страница " Электронная почта успешно отправлена! " но почта не поступает. Если я целенаправленно загружаю неверный пользователь и пароль или вымышленный почтовый сервер, об ошибке не сообщается.
Как я могу проверить ошибку в этом случае и почему сценарий все еще работает, если я дам ему очевидную ошибку?
Благодаря Грег
Что скажет почтовый журнал? –
Вы имеете в виду журнал ошибок для почтового сервера или что-то еще? У меня нет доступа к журналам почтового сервера. – Barbs