返回PHPMailer SMTP错误

返回PHPMailer SMTP错误,php,email,smtp,phpmailer,Php,Email,Smtp,Phpmailer,我已经接管了我公司网站的开发工作,但有一个密码重置表单不起作用,我无法找到它。它使用PHPMailer向用户的电子邮件地址发送重置密钥。php查询返回数据库ok,并为用户返回正确的电子邮件地址和重置键 <?php require_once('./library.php'); require_once('./PHPMailer/class.phpmailer.php'); $Trader = new CompanyTrader(); $resetdata = $Trader->re

我已经接管了我公司网站的开发工作,但有一个密码重置表单不起作用,我无法找到它。它使用PHPMailer向用户的电子邮件地址发送重置密钥。php查询返回数据库ok,并为用户返回正确的电子邮件地址和重置键

<?php
require_once('./library.php');
require_once('./PHPMailer/class.phpmailer.php');

$Trader = new CompanyTrader();

$resetdata = $Trader->resetTrader($_GET['name']);
print_arr($resetdata);

    $reset = new PHPMailer(true);
    $reset->IsSMTP();

    try {
            $reset->Host = EM_HOST;
            $reset->SMTPDebug = 2; //2 to debug
            $reset->SMTPAuth = EM_AUTH;
            $reset->AddReplyTo(CONFIRM_REPLY_EMAIL, 'Company');
            $reset->AddAddress($resetdata['traders_email_add'], $resetdata['traders_cont_name']);
            $reset->SetFrom(CONFIRM_REPLY_EMAIL, 'Company');
            $reset->Subject = 'Company Account Password Reset';
            $reset->AltBody = 'To view the message, please use an HTML compatible email viewer!';
            $body = file_get_contents('./templates/reset_email.html');
            $body = eregi_replace("\[USER_NAME\]", $resetdata['traders_user_name'], $body);
            $body = eregi_replace("\[RESET_KEY\]", $resetdata['traders_reset'], $body);
            $reset->MsgHTML($body);
            $reset->Send();
    } catch (phpmailerException $e) {
            @log_this("Pass Reset Sending Failed: ".$e->errorMessage(),"email");
            return false;
    } catch (Exception $e) {
            @log_this("Pass Reset Sending Failed: ".$e->getMessage(),"email");
            return false;
    }
?>

我想不出来。是不是因为主人增加了我们可以发送的电子邮件数量?如果是这样,所有其他PHPMailer表单都会工作,并且整个站点的所有设置都是相同的。谢谢。

根据您提供的SMTP信息,这些邮件显示它们正在转发。请检查垃圾邮件文件夹或与邮件提供商联系以跟踪邮件。

我在生成的SMTP中未发现任何错误。PHPMailer正在打开连接,通过data命令发送数据,并显示为发送数据。250 OK id=1Tnyje-0000Kh-IL告诉您邮件服务器接受了该邮件,并给它一个1Tnyje-0000Kh-IL的id。您应该查看邮件服务器的SMTP日志以跟踪邮件。好的。谢谢我真傻。刚刚注意到这已经进入我的垃圾邮件文件夹。我如何避免这种情况?您的反向DNS与您的IP地址匹配吗?许多邮件服务器都会检查这一点,以确定邮件是否来自垃圾邮件发送者。同时检查您的IP地址是否不在电子邮件黑名单上。查看邮件的完整标题。您还可以查看站点域的SPF记录。如果您的SPF不包括为您的站点转发邮件的服务器,这可能会增加垃圾邮件分数,它可能看起来像欺骗邮件。如果这不能使您达到目的,请与您的邮件提供商联系,并要求他们提供进一步的支持。@Niby这不是一个错误。这只是SMTP横幅。在收到数据后,您是否看到250?@Niby到底有多准确…?@AnnaOleksiuk您是否有类似的问题?@AnnaOleksiuk尝试将邮件正文内容更改为简单文本。@Twisty同时,我打电话给他的托管服务提供商,他们说,电子邮件已正确送达,所以他们不知道我的收件人声称不同:/谢谢回复,tho。
SMTP -> FROM SERVER:220-78.109.170.70.srvlist.ukfast.net ESMTP Exim 4.80 #2 Wed, 26 Dec 2012 21:41:58 +0000 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail. 
SMTP -> FROM SERVER: 250-78.109.170.70.srvlist.ukfast.net Hello localhost.localdomain [127.0.0.1] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250 HELP 
SMTP -> FROM SERVER:250 OK 
SMTP -> FROM SERVER:250 Accepted 
SMTP -> FROM SERVER:354 Enter message, ending with "." on a line by itself 
SMTP -> FROM SERVER:250 OK id=1Tnyje-0000Kh-IL