php邮箱发送验证码

阅读:1005 2019-03-20 14:08:40 来源:新网

首先我们需要一个发送邮件的账号,比如qq号,

我们先登录qq邮箱点击设置里面配置smtp选项

把关闭的pop3和smtp打开,这个过程需要绑定的手机发送短信,点击发送之后然后页面会弹出一个smtp的一大串的密码,这个很需要

记录下来之后,就可以在我们的php中进行啪啪啪了

//发送邮件publicfunctionemail(){$email=input("post.email");//获取收件人邮箱//return$email;$sendmail='xxxxxx@qq.com';//发件人邮箱$sendmailpswd="xxxxxxx";//客户端授权密码,而不是邮箱的登录密码,就是手机发送短信之后弹出来的一长串的密码$send_name='lh';//设置发件人信息,如邮件格式说明中的发件人,$toemail=$email;//定义收件人的邮箱$to_name='hl';//设置收件人信息,如邮件格式说明中的收件人$mail=newphpmailer();$mail->issmtp();//使用smtp服务$mail->charset="utf8";//编码格式为utf8,不设置编码的话,中文会出现乱码$mail->host="smtp.qq.com";//发送方的smtp服务器地址$mail->smtpauth=true;//是否使用身份验证$mail->username=$sendmail;////发送方的$mail->password=$sendmailpswd;//客户端授权密码,而不是邮箱的登录密码!$mail->smtpsecure="ssl";//使用ssl协议方式$mail->port=465;//qq端口465或587)$mail->setfrom($sendmail,$send_name);//设置发件人信息,如邮件格式说明中的发件人,$mail->addaddress($toemail,$to_name);//设置收件人信息,如邮件格式说明中的收件人,$mail->addreplyto($sendmail,$send_name);//设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址$mail->subject="这里是邮件标题";//邮件标题$code=rand(100000,999999);session("code",$code);//return$code."----".session("code");$mail->body="邮件内容是您的验证码是:$code,如果非本人操作无需理会!";//邮件正文//$mail->altbody="thisistheplaintext纯文本";//这个是设置纯文本方式显示的正文内容,如果不支持html方式,就会用到这个,基本无用if(!$mail->send()){//发送邮件31echo"messagecouldnotbesent.";echo"mailererror:".$mail->errorinfo;//输出错误信息}else{return“发送成功”;}}

如果你就是直接的这样写那么你又会出现一系列的问题;

发送邮件我们需要一个扩展包随便下一个phpmailer包;

我们需要里面的phpmailer.php,class.smtp.php两个文件,放在extend文件下新建一个phpmailer文件夹下

phpmailer.php如果是class.phpmailer.php就把前面的class去掉(我是在tp5框架)

分别在两个文件里面加上命名空间usephpmailerphpmailer;

不然会出现phpmailernotfound和smtpnotfound

除此之外还要把phpmailer里面的最后一个方法继承的exception改成exception

相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>
推荐商标

{{ v.name }}

{{ v.cls }}类

立即购买 联系客服