繁体   English   中英

无法使用gmail帐户通过phpmailer发送电子邮件

[英]unable to send email with phpmailer with gmail account

我早就感到困惑,为什么我要测试许多示例和正确的示例,以使用带有Gmail帐户的php mailer发送电子邮件,但是它不起作用,这是错误

> 2015-04-21 07:06:50   CLIENT -> SERVER: EHLO www.ariarules.com
 2015-04-21 07:06:50    CLIENT -> SERVER: STARTTLS
 2015-04-21 07:06:50    CLIENT -> SERVER: EHLO www.ariarules.com
 2015-04-21 07:06:50    CLIENT -> SERVER: AUTH LOGIN
 2015-04-21 07:06:50    CLIENT -> SERVER:
 2015-04-21 07:06:52    SMTP ERROR: Username command failed:   
 535          Incorrect authentication data
 2015-04-21 07:06:52    SMTP Error: Could not authenticate.
 2015-04-21 07:06:52    CLIENT -> SERVER: QUIT
 2015-04-21 07:06:52    SMTP connect() failed.
 Mailer Error: SMTP connect() failed.

和我的代码

$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; 
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'tls'; // secure transfer enabled REQUIRED for GMail
$mail->Host = "smtp.gmail.com";
$mail->Port = 587; // or 587
$mail->IsHTML(true);
$mail->Username = "googleaccount@gmail.com";
$mail->Password = "pass";
$mail->SetFrom("user@gmail.com");
$mail->Subject = "Test";
$mail->Body = "hello";
$mail->AddAddress("user@gmail.com");
if(!$mail->Send())
{
echo "Mailer Error: " . $mail->ErrorInfo;
}
else
{
echo "Message has been sent";
}

最后最好知道我用465和587端口测试tls和ssl但是....

gmail不允许从安全性较低的应用程序发送电子邮件。 Google帐户设置中有一个选项“对安全性较低的应用程序进行访问”。 打开它,您将能够发送电子邮件。

前几天我也面临着同样的问题。 我找到了这个解决方案,可能对您有用。 奇怪,但对我有用。

$username="googleaccount@gmail.com";
$password="pass":
$mail->Username = $username;
$mail->Password = $password;

启用“访问不太安全的应用程序”:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM