我觉得很困惑,为什么我测试很多很多例子和正确的例子用php邮件发送电子邮件与gmail帐户但它没有用,这里是错误
> 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";
}
最后知道我测试tls& ssl与端口465&但是......
答案 0 :(得分:0)
gmail不允许从安全性较低的应用程序发送电子邮件。在Google帐户设置中有一个选项“访问安全性较低的应用”。打开它,你就可以发送电子邮件了。
答案 1 :(得分:0)
前几天我遇到了同样的问题。我找到了这个解决方案,可能对你有用。像这样传达你的价值观。它奇怪但为我工作。
$username="googleaccount@gmail.com";
$password="pass":
$mail->Username = $username;
$mail->Password = $password;
答案 2 :(得分:0)
启用"访问不太安全的应用" :