Heim > Artikel > Backend-Entwicklung > smtp发送邮件总是出错怎么处理
smtp发送邮件总是出错怎么办?
我想用smtp发送邮件激活账号的 可以一直出现这个问题我解决不了了
------解决方案--------------------
你自己测试时是发送成功了吗?
这个看着挺正常的
这只是没把调试日志关了吧?
看看有没有生成log之类的
我用的发送邮箱是这么一段调试
echo "原因:".$this->smtp->logs;
你的应该也有类似的吧
------解决方案--------------------
<?php<br /> $ip=$_SERVER['REMOTE_ADDR']; <br /> //ok的邮箱发送。<br /> include "smtp.class.php"; //需要包含的发送邮件类<br /> //$smtpserver = "SMTP.163.com"; //您的smtp服务器的地址<br /> $smtpserver=""; //smtp服务器地址<br /> $port =25; //smtp服务器的端口,一般是 25 <br /> //$smtpuser = ""; //您登录smtp服务器的用户名<br /> //$smtppwd = ""; //您登录smtp服务器的密码<br /> $mailtype = "HTML"; //邮件的类型,可选值是 TXT 或 HTML ,TXT 表示是纯文本的邮件,HTML 表示是 html格式的邮件<br /> $sender = "{$email}"; //发件人邮箱<br /> //发件人,一般要与您登录smtp服务器的用户名($smtpuser)相同,否则可能会因为smtp服务器的设置导致发送失败<br /> $smtp = new smtp($smtpserver,$port,false,$smtpuser,$smtppwd,$sender); //第三个值为false时,可匿名登录发送邮件,将$smtpuser、$smtppwd注释掉<br /> //$smtp->debug = true; //是否开启调试,只在测试程序时使用,正式使用时请将此行注释 不注释掉会有很多<br /> $to = ""; //收件人邮箱<br /> //准备使用的邮箱 <br /> $subject = "$time-($address)-$zixun1"; //这里填写邮件的主题<br /> $body="" //这里写邮件的正文内容<br /> $send=$smtp->sendmail($to,$sender,$subject,$body,$mailtype); //邮件发送<br /> ?><br /> <br /> <?php<br /> //如果遇到错误,调试的方法 这段之前有个else什么的 可以先不用 即发送不成功用的代码<br /> echo "原因:".$this->smtp->logs; //会生成smtp发送的日志<br /> ?>