代潇瑞博客

php发送邮件功能整合到thinkphp

| 点击次数:12145

互联网的时代,email必不可少。有时候有留言功能的话,后台再配合一个邮件发送功能,也就是当回复留言的时候可以用邮件通知留言者。这样想必可以增加不少网站的友好度和回头率。


现在我将这个功能整合了一下。发个核心的代码,仅供参考。


先将一个smtp类和发送邮件类(SendMail.class.php)放到 wwwroot\Thinkphp\Extend\Library\ORG\Util 目录下。


QQ截图20130902130216


SendMail.class.php:


<?php


class SendMail{

//****************************************************

var $smtpserver = "smtp.126.com";//SMTP服务器

var $smtpserverport =25;//SMTP服务器端口

var $smtpusermail = "daixiaorui@126.com";//SMTP服务器的用户邮箱(邮箱名是举的例子)

var $smtpuser = "daixiaorui";//SMTP服务器的用户帐号

var $smtppass = "123456";//SMTP服务器的用户密码

var $mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件

//****************************************************


public function __construct($mailto,$username,$mailcontent){

$mailtitle = "亲爱的\"".$username."\",您的留言/评论有了新回复";

//这里面的一个true是表示使用身份验证,否则不使用身份验证.

$smtp = new Smtp($this->smtpserver,$this->smtpserverport,true,$this->smtpuser,$this->smtppass);

//是否显示发送的调试信息

$smtp->debug = false;

$state = $smtp->sendmail($mailto, $this->smtpusermail, $mailtitle, $mailcontent, $this->mailtype);

}

}

?>


然后 后台回复留言的时候调用就行了:


public function reply(){

$com = D("Guestbooks");

$thiscid = I("asid");

$mailto = I("mailto");

$thiscom = $com->where("id=$mailto")->find();

if($com->create()){

//送用户发送邮件

//引入类

import("ORG.Util.Smtp");

import("ORG.Util.SendMail");

$content = '<p>亲爱的<b>"'.$thiscom['username'].'"</b>,您好:</p><p>&nbsp;</p><p>您在&nbsp;<a href="https://www.daixiaorui.com/" target="_blank">代潇瑞博客-专注于PHP学习,互联网分享</a>&nbsp;的留言有了新回复,请点击下面链接查看详细的回复内容,谢谢您的光临!!</p><p><a href="https://www.daixiaorui.com/Guestbook/#floor'.$thiscid.'" target="_blank">https://www.daixiaorui.com/Guestbook/#floor'.$thiscid.'</a></p><p>&nbsp;</p><p><font color="red">如果不是您的回复,可以不用进行理睬。</font><p><p>&nbsp;</p><p>本邮件来自:<a href="https://www.daixiaorui.com/" target="_blank">代潇瑞博客-专注于PHP学习,互联网分享</a>&nbsp。欢迎前来阅读。<p>';

//echo $content; exit();

new SendMail($thiscom['email'],$thiscom['username'],$content);

$this->okOrFailed($com->add(),/Dmanage.php/Article."/index");

}else{

$this->error($com->getError(),"");

}

}


smtp类下载:https://www.daixiaorui.com/read/16.html


我只介绍了一个过程,这部分代码可能会有看不懂。只是一个思路吧。如果不清楚的话可以联系我!

【相关推荐】

触屏版 | 电脑版

Copyright © 2013 代潇瑞博客手机版

QQ: 446673330

粤ICP备13071969号-1