phpgmailer突然停止工作
我使用了phpgmailer突然停止工作,php,phpmailer,Php,Phpmailer,我使用了phpgmailer发送电子邮件,它工作得很顺利。今天我测试了我的项目,但它现在不工作了 <?php require_once('class.phpgmailer.php'); $mail = new PHPGMailer(); $mail->Username = 'username@gmail.com'; $mail->Password = '********'; $mail->F
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';
@goose是正确的,删除第一个$mail->Send()
,并将其保留在if语句中。如果来自
的地址与用户名电子邮件相同,那么您也不需要它,因为它将从您的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,并遵循此处的教程:@goose是正确的,删除第一个$mail->Send()
,并将其保留在If语句中。如果来自
的地址与用户名电子邮件相同,那么您也不需要它,因为它将从您的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,并按照此处的教程进行操作:我建议您下载并尝试以下代码:
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";
}
我建议您下载并尝试以下代码:
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";
}
请确保:
$mail->Username
等于$mail->From
,并且是正确的
$mail->Password
正确
$mail->FromName
不包含“”字符;只要试试$mail->FromName='Test'代码>
请确保:
$mail->Username
等于$mail->From
,并且是正确的
$mail->Password
正确
$mail->FromName
不包含“”字符;只要试试$mail->FromName='Test'代码>
回送
$mail->ErrorInfo
时出现的错误是什么?无法发送邮件。邮件错误:以下发件人地址失败:username@gmail.comi已经在谷歌上搜索了这么多小时,但没有任何帮助:(对此感到非常不安。端口=465时出现超时错误,端口=25时出现邮件程序错误!为什么$mail->Send()要用两次?我想您只需要Send()就可以了。)如果需要检查,请检查内部。并确保您的密码正确。您说您在一年前使用过它!当您回显$mail->ErrorInfo
时会出现什么错误?无法发送邮件。邮件错误:以下发件人地址失败:username@gmail.comi已经在谷歌上搜索了这么多小时,但没有任何帮助:(对此感到非常不安。端口=465时出现超时错误,端口=25时出现邮件程序错误!为什么$mail->Send()要用两次?我想您只需要Send()就可以了。)如果需要检查,请检查内部。并确保您的密码正确。您说您一年前使用过它!现在的错误是什么?您确定Gmail密码没有更改吗?相同的错误!是的,我现在使用相同的密码访问了该帐户:(调用未定义的方法PHPGMailer::SetFrom()在C:\xampp\htdocs\email\u中,通过第15Ok行上的\u gmail\index.php发送\u…take away$mail->SetFrom('email@gmail.com“,”来自名称“)
然后再试一次。我已经再次编辑了答案,抱歉,我只能建议这么做。现在错误是什么?你确定Gmail密码没有更改吗?相同的错误!是的,我现在使用相同的密码访问了该帐户:(调用未定义的方法PHPGMailer::SetFrom()在C:\xampp\htdocs\email\u中,通过第15Ok行上的\u gmail\index.php发送\u…take away$mail->SetFrom('email@gmail.com“,”来自名称“)
然后再试一次。我已再次编辑了答案,抱歉,我只能建议您这么做。现在出现此错误!SMTP错误:无法连接到SMTP主机。现在出现此错误!SMTP错误:无法连接到SMTP主机。