国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

記錄:使用PHPMailer在ThinkPHP3.2.3上實現發送郵件功能

2019-11-06 06:14:33
字體:
來源:轉載
供稿:網友

php工作的第一件任務就是實現發送郵件功能。由于一年沒碰過PHP,也沒用過TP框架,內心有些忐忑。公司的老項目用的TP3.2.3框架開發的,首先把框架大致看了下,百度相關郵件類的資料,可喜的發現有PHPMailer這個可愛的函數包!

放入框架前首先測試一下,在PHPMailer根目錄下創建test.php

<?phpheader("content-type:text/html;charset=utf-8");require("class.phpmailer.php"); $mail = new PHPMailer(); //建立郵件發送類$address ="******@QQ.com";//收件人地址$mail->IsSMTP(); // 使用SMTP方式發送$mail->Host = "smtp.163.com"; // 您的企業郵局域名$mail->SMTPAuth = true; // 啟用SMTP驗證功能$mail->Username = "155****26@163.com"; // 郵局用戶名(請填寫完整的email地址)$mail->PassWord = "a123456"; // 郵箱授權碼$mail->Port=25;//端口號$mail->CharSet='UTF-8'; //設置郵件的字符編碼,這很重要,不然中文亂碼$mail->From = "155*****826@163.com"; //郵件發送者email地址$mail->FromName = "test3";//發送人的名字$mail->AddAddress("$address", "a");//收件人地址,可以替換成任何想要接收郵件的email信箱,格式是AddAddress("收件人email","收件人姓名")//$mail->AddReplyTo("", ""); //$mail->AddAttachment("/var/tmp/file.tar.gz"); // 添加附件//$mail->IsHTML(true); // set email format to HTML //是否使用HTML格式 $mail->Subject = "PHPMailer測試郵件"; //郵件標題$mail->Body = "Hello,這是測試郵件"; //郵件內容$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; //附加信息,可以省略 if(!$mail->Send()){echo "郵件發送失敗. <p>";echo "錯誤原因: " . $mail->ErrorInfo;exit;} echo "郵件發送成功";測試網易郵箱均成功,QQ郵箱各種端口號、授權碼、獨立密碼一一嘗試均失敗。

接下來就是整合到框架里了:

根據 此文Thinkphp3.2.3整合PHPMailer實現郵箱收發郵件( 兼容網易郵箱和QQ郵箱) 比葫蘆畫瓢,將PHPMailer函數包放在在/ThinkPHP/Library/Vendor里,然后創建/View/Form/Index.php

	<!doctype html>	<html lang="en">	<head>	<meta charset="UTF-8">	<title>Document</title>	</head>	<body>	<form action="" method="post" enctype="multipart/form-data">	收件人郵箱:<input  type="text" name="mail"/>	標題:<input  type="text" name="title"/>	內容<input  type="text" name="content"/>	<input class="button" type="submit" value="發送"/>	</form>	</body>	</html> Common創建公共函數Function.php
<?phpfunction sendMail($to, $title, $content) {    Vendor('PHPMailer.PHPMailerAutoload');    $mail = new PHPMailer(); //實例化    $mail->IsSMTP(); // 啟用SMTP    $mail->Host=C('MAIL_HOST'); //smtp服務器的名稱    $mail->SMTPAuth = C('MAIL_SMTPAUTH'); //啟用smtp認證    $mail->Username = C('MAIL_USERNAME'); //發件人郵箱名    $mail->Password = C('MAIL_PASSWORD') ; //163郵箱發件人授權密碼    $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());}

config.php添加配置

	'MAIL_HOST' =>'smtp.163.com',//smtp服務器的名稱	'MAIL_SMTPAUTH' =>TRUE, //啟用smtp認證	'MAIL_USERNAME' =>'155****26@163.com',//發件人的郵箱名	'MAIL_PASSWORD' =>'a123456',//163郵箱發件人授權密碼		'MAIL_FROM' =>'155*****26@163.com',//發件人郵箱地址	'MAIL_FROMNAME'=>'iLen',//發件人姓名	'MAIL_CHARSET' =>'utf-8',//設置郵件編碼	'MAIL_ISHTML' =>TRUE, // 是否HTML格式郵件最后執行Form控制器
class FormController extends Controller {    public function index(){                		if(SendMail($_POST['mail'],$_POST['title'],$_POST['content'])) {        		$this->success('發送成功!');    			} else {        		$this->error('發送失敗');}    }}   運行:

	http://localhost/ThinkPHP/index.php/Home/Form/ 卻直接跳轉 

index操作里代碼改為

if(!IS_POST){			$this->display();	            	}else{    		if(SendMail($_POST['mail'],$_POST['title'],$_POST['content'])) {        		$this->success('發送成功!');    			} else {        		$this->error('發送失敗');    		}    	}即可成功跳轉


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 肥西县| 旬阳县| 徐汇区| 闽清县| 新昌县| 南汇区| 遂平县| 新蔡县| 北川| 响水县| 西藏| 太保市| 丰镇市| 蚌埠市| 外汇| 林西县| 塔河县| 余江县| 越西县| 九江市| 磐石市| 高阳县| 铜梁县| 土默特右旗| 九龙城区| 大足县| 东港市| 股票| 东丽区| 徐州市| 太仓市| 太原市| 克山县| 满城县| 江华| 芒康县| 启东市| 寻乌县| 永福县| 黎平县| 寻甸|