PHPMailer郵件類利用smtp.163.com發(fā)送郵件方法
更新時間:2008年09月11日 18:47:03 作者:
利用smtp.163.com 發(fā)送郵件(本地無需服務器)
第一步:需要下載PHPMailer文件包phpmailer-1.73.tar.gz 來自開源社區(qū): http://phpmailer.sourceforge.net/
第二步:確認你的服務器系統(tǒng)已經(jīng)支持socket 如下圖,通過phpinfo();查看是否支持sockets
如果沒有這一項就請注意: socket 是屬于PHP擴展部分,編譯時必須給定一個用于./configure --enable-sockets 的配置選項。

第三步:把文件解壓到你的web服務器目錄下,調用類就可以了,說明:首先包含 class.phpmailer.php,然后創(chuàng)建對象,設置參數(shù),調用成員函數(shù)。具體請見下面的示例代碼:
<?php
/*******************************
* 作者:李英江
* 日期:2006-12-7
*******************************/
require("phpmailer/class.phpmailer.php");
function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) {
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
$mail->Host = "200.162.244.66"; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "yourmail"; // SMTP username 注意:普通郵件認證不需要加 @域名
$mail->Password = "mailPassword"; // SMTP password
$mail->From = "yourmail@cgsir.com"; // 發(fā)件人郵箱
$mail->FromName = "cgsir.com管理員"; // 發(fā)件人
$mail->CharSet = "GB2312"; // 這里指定字符集!
$mail->Encoding = "base64";
$mail->AddAddress($sendto_email,"username"); // 收件人郵箱和姓名
$mail->AddReplyTo("yourmail@cgsir.com","cgsir.com");
//$mail->WordWrap = 50; // set word wrap
//$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true); // send as HTML
// 郵件主題
$mail->Subject = $subject;
// 郵件內容
$mail->Body = '
<html><head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=GB2312"></head>
<body>
歡迎來到<a >http://www.cgsir.com</a> <br /><br />
感謝您注冊為本站會員!<br /><br />
</body>
</html>
';
$mail->AltBody ="text/html";
if(!$mail->Send())
{
echo "郵件發(fā)送有誤 <p>";
echo "郵件錯誤信息: " . $mail->ErrorInfo;
exit;
}
else {
echo "$user_name 郵件發(fā)送成功!<br />";
}
}
// 參數(shù)說明(發(fā)送到, 郵件主題, 郵件內容, 附加信息, 用戶名)
smtp_mail('yourmail@cgsir.com', '歡迎來到cgsir.com!', 'NULL', 'cgsir.com', 'username');
?>
要注意的內容:
1. 郵件的字符集設置, $mail->CharSet = "GB2312"; // 這里指定字符集!在這里我只指定為GB2312因為這樣Outlook能正常顯示郵件主題,我嘗試過設為utf-8,但在Outlook下顯示亂碼。
2. 如果是發(fā)送html格式的郵件,那么記得也指定為<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
3. 如果你想用它來群發(fā)郵件的話,記得修改包含文件函數(shù),如:
require("phpmailer/class.phpmailer.php");
改為
require_once("phpmailer/class.phpmailer.php");
否則的話會產(chǎn)生類的重定義。
第二步:確認你的服務器系統(tǒng)已經(jīng)支持socket 如下圖,通過phpinfo();查看是否支持sockets
如果沒有這一項就請注意: socket 是屬于PHP擴展部分,編譯時必須給定一個用于./configure --enable-sockets 的配置選項。

第三步:把文件解壓到你的web服務器目錄下,調用類就可以了,說明:首先包含 class.phpmailer.php,然后創(chuàng)建對象,設置參數(shù),調用成員函數(shù)。具體請見下面的示例代碼:
復制代碼 代碼如下:
<?php
/*******************************
* 作者:李英江
* 日期:2006-12-7
*******************************/
require("phpmailer/class.phpmailer.php");
function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) {
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
$mail->Host = "200.162.244.66"; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "yourmail"; // SMTP username 注意:普通郵件認證不需要加 @域名
$mail->Password = "mailPassword"; // SMTP password
$mail->From = "yourmail@cgsir.com"; // 發(fā)件人郵箱
$mail->FromName = "cgsir.com管理員"; // 發(fā)件人
$mail->CharSet = "GB2312"; // 這里指定字符集!
$mail->Encoding = "base64";
$mail->AddAddress($sendto_email,"username"); // 收件人郵箱和姓名
$mail->AddReplyTo("yourmail@cgsir.com","cgsir.com");
//$mail->WordWrap = 50; // set word wrap
//$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true); // send as HTML
// 郵件主題
$mail->Subject = $subject;
// 郵件內容
$mail->Body = '
<html><head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=GB2312"></head>
<body>
歡迎來到<a >http://www.cgsir.com</a> <br /><br />
感謝您注冊為本站會員!<br /><br />
</body>
</html>
';
$mail->AltBody ="text/html";
if(!$mail->Send())
{
echo "郵件發(fā)送有誤 <p>";
echo "郵件錯誤信息: " . $mail->ErrorInfo;
exit;
}
else {
echo "$user_name 郵件發(fā)送成功!<br />";
}
}
// 參數(shù)說明(發(fā)送到, 郵件主題, 郵件內容, 附加信息, 用戶名)
smtp_mail('yourmail@cgsir.com', '歡迎來到cgsir.com!', 'NULL', 'cgsir.com', 'username');
?>
1. 郵件的字符集設置, $mail->CharSet = "GB2312"; // 這里指定字符集!在這里我只指定為GB2312因為這樣Outlook能正常顯示郵件主題,我嘗試過設為utf-8,但在Outlook下顯示亂碼。
2. 如果是發(fā)送html格式的郵件,那么記得也指定為<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
3. 如果你想用它來群發(fā)郵件的話,記得修改包含文件函數(shù),如:
require("phpmailer/class.phpmailer.php");
改為
require_once("phpmailer/class.phpmailer.php");
否則的話會產(chǎn)生類的重定義。
您可能感興趣的文章:
- PHPMailer使用教程(PHPMailer發(fā)送郵件實例分析)
- 功能齊全的PHP發(fā)送郵件類代碼附詳細說明
- phpmailer簡單發(fā)送郵件的方法(附phpmailer源碼下載)
- php中mail函數(shù)發(fā)送郵件失敗的解決方法
- Linux服務器下PHPMailer發(fā)送郵件失敗的問題解決
- phpmail類發(fā)送郵件函數(shù)代碼
- PHP實現(xiàn)自動發(fā)送郵件功能代碼(qq 郵箱)
- thinkphp實現(xiàn)發(fā)送郵件密碼找回功能實例
- PHP實現(xiàn)163郵箱自動發(fā)送郵件
- PHP的類 功能齊全的發(fā)送郵件類
- PHP發(fā)送郵件確認驗證注冊功能示例【修改別人郵件類】