无法从SMTP服务器发送电子邮件

时间:2015-06-27 05:57:41

标签: php email phpmailer

您好我使用PHPMailer发送电子邮件。我已经实现了以下代码来发送电子邮件。

<?php

// require('PHPMail/class.phpmailer.php');
require('PHPMail/PHPMailerAutoload.php');  
$mail = new PHPMailer();  
$mail->IsSMTP();  
$mail->SMTPDebug  = 2;  
$mail->SMTPAuth = true; 
$mail->SMTPSecure = 'tls'; 
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;      
$mail->Username = "myname@gmail.com";   
$mail->Password = "test";
$mail->SetFrom('myname@gmail.com','Test'); 
$mail->Subject = "A Test Email From Gmail";  
$mail->Body = "Body From Gmail"; 
$mail->AddAddress('sender@gmail.com', 'Name'); 
if($mail->Send())
{

    echo "Message sent!";

}

else
{

        echo "Mailer Error: " . $mail->ErrorInfo;

}

?>

我从localhost发送电子邮件时收到了电子邮件。

当我尝试从服务器发送电子邮件时,会显示以下错误

SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

我是否必须在服务器上启用电子邮件设置?

提前致谢

1 个答案:

答案 0 :(得分:1)

这意味着PHPMailer无法联系您在Host属性中指定的SMTP服务器。

登录您的Gmail帐户并访问:https://www.google.com/accounts/DisplayUnlockCaptcha

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

并启用&#34;访问不太安全的应用&#34;

提供您的应用并访问您的帐户。