Plus.W 2015-06-04 03:57 采纳率: 20%
浏览 2707

phpmailer发送邮件提示SMTP server error怎么回事?

以下是我的代码
错误提示信息为:
SMTP server error: Error: send HELO/EHLO first
如果把SMTPAuth改为true,错误为
SMTP Error: Could not authenticate. Mail errorSMTP Error: Could not authenticate.
请教大神是什么原因?
是不是还需要哪些设置?还是phpmailer用得不对?
谢谢!

function sendmail($to,$subject,$msg)
{
require_once "PHPMailer/class.phpmailer.php";
include('PHPMailer/class.smtp.php');

$mail = new PHPMailer(); //创建实例
$mail -> CharSet='utf-8'; //设置字符集
$mail -> SetLanguage('en','include/PHPMailer/language/');  //设置语言类型和语言文件所在目录
$mail -> IsSMTP(); //使用SMTP方式发送
$mail -> SMTPAuth = false; //设置服务器是否需要SMTP身份验证
$mail -> Host = "smtp.163.com"; //SMTP 主机地址
$mail -> Port = 25; //SMTP 主机端口
$mail -> From = "ajw211@163.com"; //发件人EMAIL地址
$mail -> FromName = 'ajw211'; //发件人在SMTP主机中的用户名
$mail -> Username = "anthony"; //发件人的姓名
$mail -> Password = "**************"; //发件人在SMTP主机中的密码
$mail -> Subject = $subject; //邮件主题
$mail -> AltBody = 'text/html'; //设置在邮件正文不支持HTML时的备用显示
$mail -> Body = $msg;//邮件内容做成
$mail -> IsHTML(true);  //是否是HTML邮件
$mail -> AddAddress($to,'zy10601'); //收件人的地址和姓名
$mail -> AddReplyTo($to,'zy10601'); //收件人回复时回复给的地址和姓名
//$mail -> AddAttachment('include/id.csv','att.csv');//附件的路径和附件名称

if(!$mail->Send()){
    echo "Mail error" . $mail->ErrorInfo;
}

else{
    echo "suucceed!!";
}

}
$to = $_POST['toemail'];
$subject = $_POST['title'];
$msg = $_POST['content'];
sendmail($to,$subject,$msg);

  • 写回答

1条回答

  • pop32399 2015-06-04 04:55
    关注

    这个问题问得好,不太好回答

    评论

报告相同问题?

悬赏问题

  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择