thinkphp发送邮件

1.首先下载smtp类,放入ORG中;

2.在某一个控制器中增加如下方法:

public function email(){                

import(‘@.ORG.Smtp‘);
       $smtpserver = "smtp.163.com";//SMTP服务器
       $smtpserverport =25;//SMTP服务器端口
       $smtpusermail = "****";//SMTP服务器的用户邮箱//163邮箱等
       if($_POST[‘ema‘]!=""){
$smtpemailto =$_POST[‘ema‘]; //$_POST[‘ema‘];//发送给谁
     }else{
   $this->error(‘请填写需要验证的邮箱!‘);
//$smtpemailto ="*****";
 }
       $smtpuser = "*****";//SMTP服务器的用户帐号
       $smtppass = "*****";//SMTP服务器的用户密码
       $mailsubject = "邮件找回密码";//邮件主题

if(isset($_POST[‘username‘]) && $_POST[‘username‘]!=null){
$where[‘username‘]=array(‘like‘,"%{$_POST[‘username‘]}%");
      }else{
 $this->error("请输入用户名");
}
   $m=M(‘User‘);
   $arr=$m->where($where)->select();
   $this->assign(‘data‘,$arr);
//echo($arr[0][password]);
       $mailbody =$arr[0][password]."<a href=‘http://text.com/message/index.php/Login/login‘>"."点击登录</a>";//邮件内容
       $mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件
       $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
       //$smtp->debug = TRUE;//是否显示发送的调试信息
      $result=$smtp->sendmail($smtpemailto, $smtpusermail, $mailsubject, $mailbody, $mailtype);
  if(result){
      $this->success(‘邮件发送成功,注意查收!‘,‘http://text.com/message/index.php/Login/login‘);
  }else{
      $this->success(‘邮件发送失败,请重新填写!‘,‘http://text.com/message/index.php/User/select‘);
  }

  }

经测试对qq邮箱、163均可以使用;

smtp.class.php下载地址:http://download.csdn.net/detail/c1041087078/7035259

thinkphp发送邮件,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。