PHP发送邮件通常有两个方法。
1.用php内置函数mail()发送邮件,不过通常都不好用。
2.用smtp类来发送邮件,非常好用。支持163,126,qq常用邮箱。博主亲自测试通过。
本文主要介绍一下 用 smtp类发送邮件的方法。
smtp类发送邮件的方法其实很简单,也很稳定,类是别人已经写好的了,你只需要调用就行了。几行简单的配置就能发邮件。
以下就是核心代码:
<?php
require_once "smtp.class.php";//引用smtp类
//******************** 配置信息 ********************************
$smtpserver = "smtp.163.com";//SMTP服务器
$smtpserverport =25;//SMTP服务器端口
$smtpusermail = "XXXX@163.com";//SMTP服务器的用户邮箱
$smtpemailto = $_POST['toemail'];//发送给谁
$smtpuser = "XXXX";//SMTP服务器的用户帐号
$smtppass = "您的邮箱密码";//SMTP服务器的用户密码
$mailtitle = $_POST['title'];//邮件主题
$mailcontent = "<h1>".$_POST['content']."<a href="http://www.lrxin.com/archives-886.html">php利用smtp类 发送电子邮件</a></h1>";//邮件内容
$mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件
//************************ 配置信息 ****************************
$smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
$smtp->debug = false;//是否显示发送的调试信息
$state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);
echo "<div style='width:300px; margin:36px auto;'>";
if($state==""){
echo "对不起,邮件发送失败!请检查邮箱填写是否有误。";
echo "<a href='index.html'>点此返回</a>";
exit();
}
echo "恭喜!邮件发送成功!!";
echo "<a href='index.html'>点此返回</a>";
echo "</div>";
?>
完整范例下载:phpmail_smtp.zip
百度网盘:http://pan.baidu.com/s/1ntnfySp