Im создает небольшой скрипт электронной почты в момент с PHPMailer + SMTP Authentication. Я попытался в настоящее время отправки электронной почты с использованием неправильно Passwort - но она по-прежнему возвращает «истина» для успеха ... Кто-нибудь есть какие-либо идеи `PHPMailer не дает сообщение об ошибке?
Вот моя функция, что я использую для вызова Sendmail:
?$erfolg_email = true;
foreach($empfaenger as $value)
{
$response = $this->sendMail($smtp, $value, $content, $files);
if($response != true)
{
return $response;
$erfolg_email = false;
}
}
а вот мой PHPMailer Функция
function sendMail($smtp, $empfaenger, $content, $attachements)
{
$mail = new PHPMailer(true);
try{
$mail->IsSMTP();
$mail->Host = $smtp['SMTP'];
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Port = $smtp['Port'];
$mail->SMTPSecure = 'tls';
if($smtp['Domain'] != '')
{
$username = $smtp['Username']."@".$smtp['Domain'];
}else
{
$username = $smtp['Username'];
}
$mail->Username = $username; // SMTP username
$mail->Password = $smtp['Password']; // SMTP password
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->From = $smtp['Email_Address'];
$mail->AddAddress($empfaenger);
$mail->WordWrap = 50;
$mail->isHTML(true);
foreach($attachements as $value)
{
$mail->AddAttachment($value);
}
$mail->Subject = "Mahnung";
$mail->Body = $content;
$mail->AltBody = "Sie haben offene Posten";
if($mail->Send() == true)
{
echo $mail->ErrorInfo;
return $mail->ErrorInfo;
}else
{
return $mail->ErrorInfo;
}
} catch (phpmailerException $e) {
return $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
return $e->getMessage(); //Boring error messages from anything else!
}
}
$ SMTP содержит массив со всеми SMTP информацию, адрес электронной почты, подписи, SMTP-сервер, Порт, Имя пользователя, Пароль и SSL Использование ...
Я уверен, что я использую неправильное имя пользователя и пароль, поскольку никакая электронная почта не проходит, но я все еще получаю «истину» в результате функции отправки почты ... ее даже не повторяет ошибку. Я даже попытался дать сообщение об ошибке, когда отправка прошла успешно ... Но ничего
Любая помощь приветствуется!
Приветствия
Ошибка является строка ... Могу ли я проверить возвращаемое значение с «is_bool()»? –
ОК - Я понял. Кажется, важно проверить возвращаемые значения всех функций с помощью «is_bool». Это помогло мне, получив правильные решения, что делать с возвращаемым значением. –
Не так много, что вам нужно использовать 'is_bool', вам нужно обращать внимание на ваши типы возврата в целом. '$ mail-> ErrorInfo' никогда не будет логическим, поэтому проверка его значения, поскольку никто не достигнет ничего, будет ли вызов успешным или нет. – Synchro