1. 程式人生 > 其它 >tp5實現郵件傳送(無註釋)

tp5實現郵件傳送(無註釋)

HTML程式碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>郵箱註冊</title>
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css">
</head>

<body>
<form action="/home/login/peroper" method="
post" style="width: 300px"> <div class="form-group"> <label for="name">對方郵箱</label> <input type="text" class="form-control" name="email" id="name"> </div> <div class="form-group"> <label for="name">標題</label> <input type="
text" class="form-control" name="title" id="name"> </div> <div class="form-group"> <label for="name">內容</label> <input type="textarea" class="form-control" name="content" id="name"> </div> <button type="submit" class="btn btn-success
">立即邀請</button> </form> </body> </html>

控制器程式碼:

    public function peroper()
    {
        //    接受郵箱引數
        $params = input();
        $email = $params['email'];//接受對方郵箱號碼
        $title = $params['title'];//郵箱主題
        $content = $params['content'];//郵箱內容
        $mail = new PHPMailer(true);                              // Passing `true` enables exceptions
        try {
            //伺服器配置
            $mail->CharSet = "UTF-8";                     //設定郵件編碼
            $mail->SMTPDebug = 0;                        // 除錯模式輸出
            $mail->isSMTP();                             // 使用SMTP
            $mail->Host = 'smtp.qq.com';                // SMTP伺服器
            $mail->SMTPAuth = true;                      // 允許 SMTP 認證
            $mail->Username = '[email protected]';                // SMTP 使用者名稱  即郵箱的使用者名稱
            $mail->Password = 'syqyafshccsabbhh';             // SMTP 密碼  部分郵箱是授權碼(例如163郵箱)
            $mail->SMTPSecure = 'ssl';                    // 允許 TLS 或者ssl協議
            $mail->Port = 465;                            // 伺服器埠 25 或者465 具體要看郵箱伺服器支援
            $mail->setFrom('[email protected]', 'yanbing');  //發件人
            $mail->addAddress($email);  // 收件人
            //$mail->addAddress('[email protected]');  // 可新增多個收件人
            $mail->addReplyTo('[email protected]', 'yanbing'); //回覆的時候回覆給哪個郵箱 建議和發件人一致
            //$mail->addCC('[email protected]');                    //抄送
            //$mail->addBCC('[email protected]');                    //密送

            //傳送附件
            // $mail->addAttachment('../xy.zip');         // 新增附件
            // $mail->addAttachment('../thumb-1.jpg', 'new.jpg');    // 傳送附件並且重新命名
            //Content
            $mail->isHTML(true);                                  // 是否以HTML文件格式傳送  傳送後客戶端可直接顯示對應HTML內容
            $mail->Subject = $title . time();
            $mail->Body = $content . date('Y-m-d H:i:s');
            $mail->AltBody = '如果郵件客戶端不支援HTML則顯示此內容';
            $mail->send();
            echo '郵件傳送成功';

        } catch (Exception $e) {
            echo '邀請失敗: ', $mail->ErrorInfo;
        }

    }