[英]phpgmailer stopped working suddenly
我使用phpgmailer
发送电子邮件,并且运行正常。 今天我测试了我的项目,但现在无法正常工作。
<?php
require_once('class.phpgmailer.php');
$mail = new PHPGMailer();
$mail->Username = 'username@gmail.com';
$mail->Password = '********';
$mail->From = 'username@gmail.com';
$mail->FromName = "<blah>";
$mail->Subject = 'something';
$mail->AddAddress('xyz@gmail.com');
$mail->Body = "Hello Sir"."\n"."
Your Password is : ."."";
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->Send();
if(!$mail->Send())
{
echo 'Message could not be sent.' ;
echo 'Mailer Error: ' . $mail->ErrorInfo;
exit;
}
echo 'Message has been sent';
我建议您下载PHPMailer并尝试以下代码:
require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = "ssl://smtp.gmail.com";
$mail->Port = 465;
$mail->Username = "from@gmail.com";
$mail->Password = "****";
$mail->FromName = "Sender name";
$mail->Subject = "test";
$mail->Body = "Test body";
$mail->AddAddress('sender@mail.com');
if(!$mail->Send()){
echo "Mailer Error: " . $mail->ErrorInfo;
}else{
echo "Message has been sent";
}
@goose是正确的,删除第一个$mail->Send()
并将其保留在if语句中。 如果From
地址与用户名电子邮件相同,则您也不需要该地址,因为它将从您的gmail帐户中获取。
尝试一下,看看是否可行。
编辑:尝试添加以下内容;
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 0; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->Username = 'email@gmail.com';
$mail->Password = 'password';
尝试这样做,如果有错误,则应该为您提供更多详细信息。
EDIT2:如果那不起作用,那么我建议尝试使用PHPMailer而不是PHPGmailer-并在此处按照教程进行操作: http : //www.web-development-blog.com/archives/send-e-mail-messages-via-smtp -with-phpmailer-and-gmail /
请确保:
$mail->Username
等于$mail->From
,并且是正确的 $mail->Password
正确 $mail->FromName
不包含“ <”和“>”字符; 只需尝试$mail->FromName = 'Test';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.