thinkphp 關於phpmailer的郵箱驗證javascript
一 、
php
登錄本身的郵箱,例如:qq郵箱。登錄qq郵箱在帳戶設置中開啓smtp服務:html
以後回發送一個受權碼 , 這個受權碼先保存下來,這個受權碼在後面會用獲得。java
2、jquery
使用composer 下載 phpmailer thinkphp
在cmd中打開你的tp框架路徑而後直接 輸入 composer require phpmailer/phpmailerjson
以後你的第三方類庫下面會多一個phpmailer文件夾,打開此文件夾;安全
而後將src的資源複製下來;服務器
在tp框架的extends文件夾下面建立一個phpmailer文件夾;app
把剛纔複製的資源粘貼在此文件夾下面。
修改三個文件的命名空間: namespace phpmailer.
3、使用phpmailer
在tp框架下面的common.php裏面寫入:
<?php function sendMail($mail , $to ,$title , $content) { try{ $mail->SMTPDebug = 0; //SMTP調試功能 0=關閉, 1=錯誤和消息 2=消息 $mail->isSMTP(); 設定使用SMTP服務; $mail->CharSet = 'utf-8'; //郵件編碼; $mail->Host = 'smtp.qq.com'; //smtp服務器; $mail->SMTPAuth = true; //啓用smtp驗證功能; $mail->Username = '******@qq.com'; //SMTP服務器用戶名; $mail->Password = '**********'; //這個是你開始獲取到的受權碼;也能夠是你的郵箱密碼; $mail->SMTPSecure = 'ssl'; //使用安全協議; //recipitents //收件人信息設置 $mail->setForm('*******@qq.com' , '爲了php'); //第一個參數是收件人郵箱 , 第二個參數是郵件主題; $mail->addAddress($to); //傳入發件人的郵箱地址; //Content郵件內容 $mail->isHTML(true); $mail->Subject = $title; $mail->Body = $content; return $mail->send() } catch (Exception $e){ echo 'Message could not sent.Mailer Error:',$email->ErrorInfo; } }
在 application conttoller 的index.php文件中 use phpmailer/PHPMaileron
<?php use app\index\controller; use think\Controller; use think\View; use phpmailer\PHPMailer; class Index extends Controller { public $view; public function __construct() { $this->view = new View; }
public function index()
{
$this->view->fetch('index/index');
}
public function sendemail() { $code = rand(10000 , 99999); $data = array_values($_POST); $user = implode('' , $data); $emailuser = str_replace('' , '.' , $user); $email = new PHPMailer(true); $res = sendMail($mail , $emailuser , 'php真好玩' , '您好!感謝您成爲[php真好玩成員] , <br />祝您玩的開心 , 玩的愉快!'); if($res){ return json(['status'=>1 , 'msg'=>'郵箱發送成功']); } else { return json(['status'=>0 , 'msg'=>'郵箱發送失敗']); } } }
controller 的view 文件下建立index文件夾 , 在index文件下寫一個index.html文件;
<html> <head> <meta charset="utf-8" /> <title>index</title> </head> <body> <input type="text" placeholder="請輸入郵箱" id="email"> <input type="button" id="btn" value="郵箱驗證"> </body> <script src="[這裏引用你的jquery路徑]"></script> <script type="text/javascript"> $(function(){ $("#btn").click(function{ $.post(":url('index/index/sendemail')", {"email":$("#email").val()}, function(data){ if(data.status){ alert(data.msg); } else { alert(data.msg); } }) }); }) </script> </html>