zoukankan      html  css  js  c++  java
  • PHP邮箱发送验证码的配置

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

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

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

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

     1 //发送邮件
     2     public function email(){
     3         $email=input("post.email");//获取收件人邮箱
     4         //return $email;
     5         $sendmail = 'xxxxxx@qq.com'; //发件人邮箱
     6         $sendmailpswd = "xxxxxxx"; //客户端授权密码,而不是邮箱的登录密码,就是手机发送短信之后弹出来的一长串的密码
     7         $send_name = 'lh';// 设置发件人信息,如邮件格式说明中的发件人,
     8         $toemail = $email;//定义收件人的邮箱
     9         $to_name = 'hl';//设置收件人信息,如邮件格式说明中的收件人
    10         $mail = new PHPMailer();
    11         $mail->isSMTP();// 使用SMTP服务
    12         $mail->CharSet = "utf8";// 编码格式为utf8,不设置编码的话,中文会出现乱码
    13         $mail->Host = "smtp.qq.com";// 发送方的SMTP服务器地址
    14         $mail->SMTPAuth = true;// 是否使用身份验证
    15         $mail->Username = $sendmail;//// 发送方的
    16         $mail->Password = $sendmailpswd;//客户端授权密码,而不是邮箱的登录密码!
    17         $mail->SMTPSecure = "ssl";// 使用ssl协议方式
    18         $mail->Port = 465;//  qq端口465或587)
    19         $mail->setFrom($sendmail, $send_name);// 设置发件人信息,如邮件格式说明中的发件人,
    20         $mail->addAddress($toemail, $to_name);// 设置收件人信息,如邮件格式说明中的收件人,
    21         $mail->addReplyTo($sendmail, $send_name);// 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
    22         $mail->Subject = "这里是邮件标题";// 邮件标题
    23 
    24         $code=rand(100000,999999);
    25         session("code",$code);
    26         //return $code."----".session("code");
    27         $mail->Body = "邮件内容是 <b>您的验证码是:$code</b>,如果非本人操作无需理会!";// 邮件正文
    28         //$mail->AltBody = "This is the plain text纯文本";// 这个是设置纯文本方式显示的正文内容,如果不支持Html方式,就会用到这个,基本无用
    29         if (!$mail->send()) { // 发送邮件
    30          31             echo "Message could not be sent.";
    32             echo "Mailer Error: " . $mail->ErrorInfo;// 输出错误信息
    33         } else {
    34             return “发送成功”;
    35         }
    36     }

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

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

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

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

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

    不然会出现phpmailer not found 和 smtp not found

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

    基本上直接就可以调用方法了,收到一份来自你自己的邮件;

  • 相关阅读:
    MySQL-基本sql命令
    Java for LeetCode 203 Remove Linked List Elements
    Java for LeetCode 202 Happy Number
    Java for LeetCode 201 Bitwise AND of Numbers Range
    Java for LeetCode 200 Number of Islands
    Java for LeetCode 199 Binary Tree Right Side View
    Java for LeetCode 198 House Robber
    Java for LeetCode 191 Number of 1 Bits
    Java for LeetCode 190 Reverse Bits
    Java for LeetCode 189 Rotate Array
  • 原文地址:https://www.cnblogs.com/liu-heng/p/7252100.html
Copyright © 2011-2022 走看看