PHP發送郵件功能實現____PHP

來源:互聯網
上載者:User

第一步

我用的是163郵箱發送郵件,做一個嘗試,在嘗試之前,需要要開啟163郵箱的授權碼如圖所示,請記住您的授權碼,將在之後的步驟中用到

第二步

需要下載一個類PHPMailer,我有這個資源已經上傳了,免費的哦親,串連在這http://download.csdn.net/detail/s371795639/9693417

下載後,解壓後此檔案夾放在Vendor目錄下,Vendor目錄下有個PHPMailer檔案夾,那就對了~

第三步

咱們該寫代碼了

html代碼:

<body><form action="{:U('home/login/changepwd')}" method="post" enctype="multipart/form-data">    郵箱:<input  type="text" id="mail" name="mail"/>    標題:<input  type="text" id="title" name="title"/>    內容<input  type="text" id="content" name="content"/>    <input class="button" type="submit" name="submit" value="發送" style="margin: 0 auto;display: block;"/></form></body>
對應的Controller的PHP代碼:

public function changepwd()//發送郵件來修改密碼{    if(isset($_POST['submit']))    {        if(SendMail($_POST['mail'],$_POST['title'],$_POST['content']))            $this->success('發送成功。');       else           $this->error('發送失敗');    }    $this->display();}
第四步

這是關鍵

在Common下建立function.php輸入代碼如下

<?php/** * Created by PhpStorm. * User: Administrator * Date: 2016/11/25 0025 * Time: 上午 11:49 *//** * 郵件發送函數 */function sendMail($to, $title, $content) {    Vendor('PHPMailer.PHPMailerAutoload');    $mail = new PHPMailer(); //執行個體化    $mail->IsSMTP(); // 啟用SMTP    $mail->Host=C('MAIL_HOST'); //smtp伺服器的名稱(這裡以QQ郵箱為例)    $mail->SMTPAuth = C('MAIL_SMTPAUTH'); //啟用smtp認證    $mail->Username = C('MAIL_USERNAME'); //你的郵箱名    $mail->Password = C('MAIL_PASSWORD') ; //郵箱授權碼(注意:這不是郵箱登入密碼。)    $mail->From = C('MAIL_FROM'); //寄件者地址(也就是你的郵箱地址)    $mail->FromName = C('MAIL_FROMNAME'); //寄件者姓名    $mail->AddAddress($to,"尊敬的客戶");    $mail->WordWrap = 50; //設定每行字元長度    $mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式郵件    $mail->CharSet=C('MAIL_CHARSET'); //設定郵件編碼    $mail->Subject =$title; //郵件主題    $mail->Body = $content; //郵件內容    $mail->AltBody = "這是一個純文字的身體在非營利的HTML電子郵件用戶端"; //郵件內文不支援HTML的備用顯示    return($mail->Send());}
在Conf下的config.php輸入配置如下

<?phpreturn array(//'配置項'=>'配置值'    'MAIL_HOST' =>'smtp.163.com',//smtp伺服器的名稱    'MAIL_SMTPAUTH' =>TRUE, //啟用smtp認證    'MAIL_USERNAME' =>'s371795639@163.com',//你的郵箱名    'MAIL_FROM' =>'s371795639@163.com',//寄件者地址    'MAIL_FROMNAME'=>'塵中客',//寄件者姓名    'MAIL_PASSWORD' =>'*******',//郵箱授權碼    'MAIL_CHARSET' =>'utf-8',//設定郵件編碼    'MAIL_ISHTML' =>TRUE, // 是否HTML格式郵件);
然後應該就沒有問題了,至少我的是這樣。如果用QQ郵箱發送貌似一直失敗,修改上面的配置也是不行。也不知道為啥。

謝謝~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.