首先先至phpmailer下載php4在用的版本
http://phpmailer.worxware.com/ <=官網
http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php4/PHPMailer%20v2.0.4%20for%20PHP4/ <=載點
打開後在根目錄的
class.phpmailer.php和class.smtp.php是最主要的發信類別
剩的檔案則皆為範例檔
然後下面是一個最簡單的範例(使用gmail發信)
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | include ( "class.phpmailer.php" ); //匯入PHPMailer類別 $Name = "Name" ; $Mail = "Mail@Subject.com" ; $Subject = "Subject" ; $Sendbody = "Sendbody" ; $mail = new PHPMailer(); //建立新物件 $mail ->IsSMTP(); //設定使用SMTP方式寄信 $mail ->SMTPAuth = true; //設定SMTP需要驗證 $mail ->SMTPSecure = "tsl" ; // Gmail的SMTP主機需要使用SSL連線 $mail ->Host = "smtp.gmail.com" ; //Gamil的SMTP主機 $mail ->Port = 587; //Gamil的SMTP主機的埠號(Gmail為465)。 $mail ->CharSet = "utf-8" ; //郵件編碼 $mail ->Username = "你的帳號@gmail.com" ; //Gamil帳號 $mail ->Password = "你的密碼" ; //Gmail密碼 $mail ->From = $Mail ; //寄件者信箱 $mail ->FromName = "線上客服" ; //寄件者姓名 $mail ->Subject = "一封線上客服信" ; //郵件標題 $mail ->Body = "姓名:" . $Name ." 信箱: ".$Mail." 主題: ".$Subject." 回應內容:". $Sendbody ; //郵件內容 $mail ->IsHTML(true); //郵件內容為html ( true || false) $mail ->AddAddress( "cochia0318@hotmail.com" ); //收件者郵件及名稱 if (! $mail ->Send()) { echo "發送錯誤: " . $mail ->ErrorInfo; } else { echo " 感謝您的回覆,我們將會盡速處理! "; } |
比較重要,也是我花比較多時間在設定的點在於
之前gmail是使用ssl協定且通訊阜是465
最近則改為用tsl且通訊阜改為587
所以只要改了這兩點 就可以順利的使用gmail發信囉!!
不過要注意 專業版的gmail一天最多寄兩千封
免費版的一天最多寄一百封
超過上限則會被鎖帳號一天!
解決方式可以申請多個gmail帳號,每個帳號輪流發送信件
便可解決這個問題