У меня возникла уникальная проблема (я провел тщательный поиск SO, прежде чем пытался задать этот вопрос.
Когда я использую PHPMailer для отправки на адрес gmail (или hotmail и т. Д.), Он отлично работает. Как только я изменяю его для отправки на адрес электронной почты Служб Google, я не получаю никакого сообщения об ошибке, вместо этого оно сообщает, что оно прошло успешно, но письма не приходят.
Кто-нибудь видел эту проблему раньше? В моем коде отсутствует что-то особенное, что делает его действительным электронным письмом для прохождения через серверы Служб Google (не уверен, что я иду в правильном направлении). Спасибо!
Начало моего кода:
<?php
require("/PHPMailer_5.2.0/class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Port = 465;
$mail->Host = 'smtp.gmail.com'; // "ssl://smtp.gmail.com" didn't worked
$mail->IsHTML(true); // if you are going to send HTML formatted emails
$mail->Mailer = 'mail';
$mail->SMTPSecure = 'ssl';
$mail->SMTPAuth = true;
$mail->Username = "******@dynamicsafetyfirst.com";
$mail->Password = "*******";
$mail->From = $_POST['email'];
$mail->AddAddress("[email protected]");
$mail->Subject = "First PHPMailer Message";
$mail->WordWrap = 50;
$mail->FromName = $_POST['name'];
$mail->Subject = $_POST['enquiry'];
$mail->Body = $_POST['comments']. "--By--".' name: '. $_POST['name']."--". 'email: ' .$_POST['email'];
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
?>
КОНЕЦ КОДЕКСА.
Вы прикладываете немало усилий, чтобы сделать что-то не так. Прежде всего, вы используете довольно старую версию PHPMailer — получите последнюю версию из GitHub. Далее, у вашего кода много проблем, поэтому начните снова, используя Пример gmail предоставлен. Используйте tls на порту 587. Не устанавливайте Mailer
— ты уже звонил isSMTP()
и переопределение Mailer
позже напрашивается на неприятности.
Чтобы увидеть, что происходит на съемочной площадке $mail->SMTPDebug = 3;
, и он покажет вам весь разговор SMTP. В этот момент вы можете получить некоторое представление о том, что происходит с вашим сообщением.
Других решений пока нет …