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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值