一、下载附件PHPMailer解压到ThinkPHP\Library\Vendor
二、在thinkPHP的配置文件config.php中写以下代码:
//邮件发送配置
'MAIL_HOST' =>'smtp.163.com',//smtp服务器的名称(MAIL_HOST' =>'smtp.exmail.qq.com',//邮箱是QQ)
'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证
'MAIL_USERNAME' =>'*****@163.com',//你的邮箱名
'MAIL_FROM' =>'****@163.com',//发件人地址
'MAIL_FROMNAME'=>'试试',//发件人姓名
'MAIL_PASSWORD' =>'*******',//邮箱客户端授权码(注意不是邮箱的登录密码)
'MAIL_CHARSET' =>'utf-8',//设置邮件编码
'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件
提示:刚申请的网易邮箱默认是没有开通SMTP服务的,需要自己手动去申请开通SMTP服务,不开通SMTP服务是无法发送邮件的,开通流程可参考:http://blog.csdn.net/u013239233/article/details/52442072。
三、在Common文件夹新建function.php
/**
* 邮件发送函数
*/
function sendMail($to, $title, $content) {
Vendor('PHPMailer.PHPMailerAutoload');
$mail = new PHPMailer(); //实例化
$mail->IsSMTP(); // 启用SMTP
$mail->Host=C('MAIL_HOST'); //smtp服务器的名称(这里以QQ邮箱为例)
$mail->SMTPAuth = C('MAIL_SMTPAUTH'); //启用smtp认证
$mail->Username = C('MAIL_USERNAME'); //你的邮箱名
$mail->Password = C('MAIL_PASSWORD') ; //邮箱密码
$mail->From = C('MAIL_FROM'); //发件人地址(也就是你的邮箱地址)
$mail->FromName = C('MAIL_FROMNAME'); //发件人姓名
$mail->AddAddress($to,"尊敬的客户");
$mail->WordWrap = 50; //设置每行字符长度
$mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式邮件
$mail->CharSet=C('MAIL_CHARSET'); //设置邮件编码
$mail->Subject =$title; //邮件主题
$mail->Body = $content; //邮件内容
$mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示
return($mail->Send());
}
四、使用PHPMailer发送邮件
<form action="__URL__/add" method="post" enctype="multipart/form-data">
邮箱:<input type="text" id="mail" name="mail"/>
标题:<input type="text" id="title" name="title"/>
内容<input type="text" id="content" name="content"/>
<input class="button" type="submit" value="发送" style="margin: 0 auto;display: block;"/>
</form>
public function add(){
if(SendMail($_POST['mail'],$_POST['title'],$_POST['content']))
$this->success('发送成功!');
else
$this->error('发送失败');
}