3/04/2012

星期日, 3月 04, 2012
1
在上一篇([PHP] 線上發信如何通過驗證的SMTP(使用PHPMailer)) 中我們討論到如何使用 PHPMailer 類別來通過驗證的伺服器,其實如果您下載了PHPMailer並解開壓縮後,可以在<examples>資料夾中看到各個不同狀況下使用 PHPMailer 來發信的程式碼,其中<test_gmail.php>就是使用 PHPMailer透過Gmail的範例。

茶米整理一下在這裡分享給大家:
<?php
include("class.phpmailer.php"); //匯入PHPMailer類別       

$mail= new PHPMailer(); //建立新物件        
$mail->IsSMTP(); //設定使用SMTP方式寄信        
$mail->SMTPAuth = true; //設定SMTP需要驗證        
$mail->SMTPSecure = "ssl"; // Gmail的SMTP主機需要使用SSL連線   
$mail->Host = "smtp.gmail.com"; //Gamil的SMTP主機        
$mail->Port = 465;  //Gamil的SMTP主機的SMTP埠位為465埠。        
$mail->CharSet = "big5"; //設定郵件編碼        

$mail->Username = "*********"; //設定驗證帳號        
$mail->Password = "*********"; //設定驗證密碼        

$mail->From = XXX@XXX.XXX.XXX; //設定寄件者信箱        
$mail->FromName = "測試人員"; //設定寄件者姓名        

$mail->Subject = "PHPMailer 測試信件"; //設定郵件標題        
$mail->Body = "大家好,       
這是一封測試信件!       
"; //設定郵件內容        
$mail->IsHTML(true); //設定郵件內容為HTML        
$mail->AddAddress("david@e-happy.com.tw", "茶米"); //設定收件者郵件及名稱        

if(!$mail->Send()) {        
echo "Mailer Error: " . $mail->ErrorInfo;        
} else {        
echo "Message sent!";        
}    
?>

註:
  1. PHP 必須安裝 OpenSSL 的擴充程式。 最好使用php 5以上,因為php 4 ,有OpenSSL的bug…,然後phpmailer 使用2.1 以上版本for php 5/6。
  2. 關於openssl的安裝方式可以參考一下這篇文章"php安裝openssl的方法 "

1 意見 :

  1. 茶米
    我有一個問題想請問,如果可我想寄原始檔過去,之前我的線上寄信都可以使用,不過最近網站公司轉換新的界面,導致我的線上寄信一直無法成功,目前客戶用到SEND完後的畫,都OK,不過實際收到都變空白,我查了好久,一直查不出原因,可以請教你嗎??

    回覆刪除