PhpMailer错误:无法发送消息.Mailer错误:SMTP连接()失败

时间:2016-04-21 15:10:36

标签: php phpmailer

我搜索谷歌和这个网站,无法解决这个phpMailer错误,这就是我需要你帮助的原因。

我使用以下phpMailer代码发送电子邮件,但所有时间它都显示错误消息:

无法发送消息.Mailer错误:SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

PhpMailer代码

require 'PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->isSMTP();                                     
$mail->Host =  gethostbyname("smtp.gmail.com");  
$mail->SMTPAuth = true;                          
$mail->Username = 'hello@gmail.com';        
$mail->Password = 'password';                 
$mail->SMTPSecure = 'ssl';                       
$mail->Port = 465;                               
$mail->isHTML(true);   
$mail->Priority = 1; 

$to = 'to@gmail.com';
$mail->setFrom('support@site.com', 'Sitename');

// Send Email tto user ####################################
$mail->addAddress('some@gmail.com', 'Shibbir Ahmed');
// send email to admin #####################################
$mail->addReplyTo('some@gmail.com', 'Information');

$mail->Subject = 'Test Subject';

$get_templae = mysqli_query($conn, "SELECT * FROM email_template WHERE t_id = '8' ");
$get_restult =  mysqli_fetch_array($get_templae);
$template =  $get_restult['t_content'];

$mail->Body    = $template;

if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}

你能否告诉我这段代码中我做错了什么?

我收到此错误:

  

2016-04-21 15:19:51 SMTP错误:无法连接到服务器:连接被拒绝(111)2016-04-21 15:19:51 SMTP连接()失败。 github.com/PHPMailer/PHPMailer/wiki/Troubleshooting消息无法发送.Mailer错误:SMTP connect()失败。 github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

更新:

我服务器的当前错误:

2016-04-21 18:06:01 SMTP错误:无法连接到服务器:连接被拒绝(111)2016-04-21 18:06:01 SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting布尔(假)

3 个答案:

答案 0 :(得分:1)

尝试降低您的Gmail安全性!

链接:https://www.google.com/settings/security/lesssecureapps

添加de debuginfo属性以查看更多错误。

$ mail-> SMTPDebug = 1;

您可以将值更改为1 2 3或4以进入过滤表单debuginfo。

希望这可以帮助你;)

答案 1 :(得分:1)

调试PHPMailer错误的最佳方法是取消注释

$mail->SMTPDebug = 3;

它会为您提供发生事件的详细日志。从身份验证一直到请求成功或失败的位置

答案 2 :(得分:0)

第1步:转到Gmail设置并启用IMAP。 第2步:清除浏览器缓存并进行检查。

如果问题仍然存在,请使用“设置”标签降低您的Gmail安全性。 Gmail Security alert will be like this