Я пытаюсь использовать PHPMailer для небольшого проекта, но я немного запутался в обработке ошибок с помощью этого программного обеспечения. Надеюсь, что у кого-то есть опыт. Когда я установил электронное письмо, и я использую:Обработка ошибок с помощью PHPMailer
$result = $mail->Send();
if(!$result) {
// There was an error
// Do some error handling things here
} else {
echo "Email successful";
}
Который работает нормально, более или менее. Проблема заключается в том, что есть ошибка, PHPMailer также, похоже, повторяет ошибку, поэтому, если есть проблема, она просто отправляет эту информацию непосредственно в браузер, по сути нарушая любую обработку ошибок, которую я пытаюсь сделать.
Is ? есть ли способ, чтобы заставить замолчать эти сообщения его не бросать исключение, его просто распечатав ошибку, которая в моем тестовом случае является:
invalid address: @[email protected] You must provide at least one recipient email address.
его означало быть ошибка, но она должна проживать в $ почте -> ErrorInfo, не выбрасывается программным обеспечением.
Я уже пытался поймать его с исключениями, часть, которую я пропустил, была «new PHPMailer (true)», которая фактически разрешает исключения. Спасибо за помощь. – Stomped
для меня .. эти строки имеют ошибки .. $ mail-> MsgHTML (file_get_contents ('contents.html')); $ mail-> AddAttachment ('images/phpmailer.gif'); // attachment $ mail-> AddAttachment ('images/phpmailer_mini.gif'); // прикрепление, как я могу это исправить .. спасибо .. – pcs
Это не хорошо. Даже при обработке исключений вы все равно должны поместить подтверждение «« Отправлено сообщение «ОК» в «условное», иначе это приведет к вводящим в заблуждение подтверждениям, что все в порядке, когда на самом деле что-то пошло не так. Поэтому используйте, например: if ($ mail-> Send()) {echo "E-mail отправлено OK
"; } ' –