php本身提供了一個郵件發送函數mail,可以在程序中直接發白電送電子(zǐ)郵件,不(bù)過該函數要求服務器(資水qì)支持sendmail
或者必須設置一台不(bù)需要中繼的郵件發送服務器(q技姐ì),但現在要找到一台不(bù)需要身份驗證的山新郵件發送中繼幾乎不(bù)可能.
所以使用mail函數往往無法成功發送email花哥.
自己如(rú)果熟悉SMTP協議,結合sock快鄉et功能就可以編寫高效穩定的郵件發送程序,但海子對一般用戶來說(shuō)太困難.好(hǎo)在互聯網上已經有很多别人編紙動寫好(hǎo)的郵件發送模塊,我們(men)隻需要下載後簡單資鐘調用即可,十分方便.
在此我們(men)給用戶推薦一個php話村下功能十分強大(dà),易用且免費的SMTP類模塊-放通PHPMailer,(下載地址http://www.phpe.net/cl費分ass/32.shtml)
PHPMailer是一個用于發送電子(zǐ)郵件的P習秒HP函數包。它提供的功能包括:
*.在發送郵時(shí)指定多個收件人,抄送地址,暗小道(àn)送地址和回複地址
*.支持多種郵件編碼包括:8bit,base64,binary和q著睡uoted-printable
*.支持SMTP驗證
*.支持冗餘SMTP服務器(qì)
*.支持帶附件的郵件和Html格式的郵件
*.自定義郵件頭
*.支持在郵件中嵌入圖片
*.調試靈活
*.經測試兼容的SMTP服務器(qì)包括:Sendmail,qmail,Postfix,Imail,Exchange等
*.可運行在任何平台之上
下載該組件後,按如(rú)下示例編寫代碼即可實現php窗動在線發送郵件.
一:前台表單
<html>
<body>
<h3>phpmailer U家藍nit Test</h3>
請你輸入<font color="#FF6666"&g笑房t;收信</font>的郵箱地址也視:
<form name="phpmailer" actio理樂n="send.php" method="post"&g區拍t;
<input type="hidde呢土n" name="submitted" value="1"/>
郵箱地址: <input type="t慢問ext" size="50" name="address" />
<br/>
<input type="submit" value="發送"/不紅>
</form>
</body>
</html>
二:後台PHP程序
<?php
require("class.phpmailer.php"); //下載朋城的文件必須放在該文件所在目錄
$mail = new PHPMailer(); //建立郵民歌件發送類
$address = $_POST['a件哥ddress'];
$mail->IsSMTP(); 明森// 使用SMTP方式發送
$mail->Host = "mail.xxxxx.com";從窗 // 您的企業郵局域名
$mail->SMTPAuth = true; //照通 啟用SMTP驗證功能
$mail->Username = "user@xxxx.com"; // 郵局用戶名(請填寫完整的email去費地址)
$mail->Password = "******"; //制區 郵局密碼
$mail->From = "user@xxxx.com"; //郵件發送者email地址
$mail->FromName = "您的名稱";
$mail->AddAddress("$address", "");//光不收件人地址,可以替換成任何想要接收郵件的email信箱拿了,格式是AddAddress("收件人emai訊國l","收件人姓名")
//$mail->AddReplyTo("",這妹 "");
//$mail->AddAttachment("/var/動見tmp/file.tar.gz"); // 添加附件
//$mail->IsHTML(true視數); // set email format to HT數師ML //是否使用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 "錯(cuò)誤原因: " . $mail->技器ErrorInfo;
exit;
}
echo "郵件發送成功";
?>