我改变了"启用google mail"的安全性较低的应用程序选项,我仍然从我的Gmail应用程序中收到此错误。
require 'inc/PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail = new PHPMailer;
$mail->IsSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.gmail.com'; // Specify main and backup server
$mail->Port = 587; // Set the SMTP port
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = '*al********@gmail.com'; // SMTP username
$mail->Password = '****at****'; // SMTP password
$mail->SMTPSecure = 'tls';
$mail->From = '*al********@gmail.com';
$mail->FromName = '******i';
$mail->AddAddress('andaeiii@aol.com', 'Ande C.'); // Add a recipient
$mail->IsHTML(true); // Set email format to HTML
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body <strong>in bold!</strong>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->Send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
exit;
}
echo 'Message has been sent';
当我运行代码时,它给了我这个错误...... &#34;邮件无法发送.Mailer错误:SMTP连接()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting&#34; - 我做得不对......有没有更好的方法,或者我可以参与的任何优选的SMTP服务器......我需要建议。
感谢。
答案 0 :(得分:0)
require "vendor/autoload.php";
//This solution is for version 6.0.3 of PHPMailer
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
$mailer = new PHPMailer(true);
try {
$mailer->isSMTP();
$mailer->SMTPOptions = [
'ssl'=> [
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
]
];
$mailer->Host = 'smtp.gmail.com';
$mailer->SMTPAuth = true;
$mailer->Username = 'mail@gmail.com';
$mailer->Password = '1234567';
$mailer->SMTPSecure = 'tls';
$mailer->Port = 587;
$mailer->CharSet = 'UTF-8';
$mailer->setFrom('mail@gmail.com');
$mailer->addAddress('example@gmail.com', 'Andres Guzmán');
$mailer->isHTML(true);
$mailer->Subject = 'Subject';
$mailer->Body = '<b>Body <b>GRACIAS!</b>';
$mailer->send();
$mailer->ClearAllRecipients();
echo "Mensaje enviado";
} catch (Exception $e) {
echo "Falla en el envío del mensaje. INFO: " . $mailer->ErrorInfo;
}