php本身提供了一個郵件發送函數mail,可以在程序中直有知接發送電子(zǐ)郵件,不(bù)過該函數要求服務器(qì)月在支持sendmail
或者必須設置一台不(bù)需要中繼的郵件發送服務器區文(qì),但現在要找到一台不(bù)需要身份驗證的郵件發送中繼幾乎不(bù物熱)可能.
所以使用mail函數往往無法成功發送email.森到
自己如(rú)果熟悉SMTP協議,結合s長風ocket功能就可以編寫高效穩定的郵件發送程序,但對一般用戶來說(s內厭huō)太困難.好(hǎo)在互聯網上已經有很多别人編寫好(hǎo)的學長郵件發送模塊,我們(men)隻需要下載後簡單調用來地即可,十分方便.
在此我們(men)給用戶推薦一個php下功能十分強大(dà),易用且免費就新的SMTP類模塊-PHPMailer,(下載地址http://www.phpe.net/class/32和制.shtml)
PHPMailer是一個用于發送電子(zǐ)郵他木件的PHP函數包。它提供的功能包括:
*.在發送郵時(shí)指定多個收件人,抄送地址,暗(爸又àn)送地址和回複地址
*.支持多種郵件編碼包括:8bit,base64,如商binary和quoted-printable
*.支持SMTP驗證
*.支持冗餘SMTP服務器(qì)
*.支持帶附件的郵件和Html格式的郵件
*.自定義郵件頭
*.支持在郵件中嵌入圖片
*.調試靈活
*.經測試兼容的SMTP服務器(qì)包電從括:Sendmail,qmail,Postfix,Imail,Exchange等
*.可運行在任何平台之上
下載該組件後,按如(rú)下示例編寫代碼即可實現php在線發送郵件.
一:前台表單
<html>
<body>
<h3>phpmailer Unit 們學Test</h3>
請你輸入<font color="#FF6666"&哥在gt;收信</font>的郵箱地時老址:
<form name="phpmailer" act就區ion="send.php" method="post">
<input type="hidden" name="畫也submitted" value="1"/>
郵箱地址: <input type樹就="text" size="50" name="address" /&g裡音t;
<br/>
<input type="submit" value="發送"/&g校姐t;
</form>
</body>
</html>
二:後台PHP程序
<?php
require("class.phpmail討短er.php"); //下載的文件必須放在該文件所在目錄
$mail = new PHPMailer(); //建立郵件發送類
$address = $_POST['address'];
$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("收件人em裡站ail","收件人姓名")
//$mail->AddReplyTo我女("", "");
//$mail->AddAttachment("/va高公r/tmp/file.tar.gz"); // 添加附件
//$mail->IsHTML(true); //體快 set email format to HTML //是否使用HTML格是門式
$mail->Subject = "PHPMail用喝er測試郵件"; //郵件标題
$mail->Body = "Hello,這是測試郵件"; //郵妹如件内容
$mail->AltBody = "T湖會his is the body in p能民lain text for non-HT不廠ML mail clients"; //附加信息,可以省略
if(!$mail->Send())
{
echo "郵件發送失敗. <p車歌>";
echo "錯(cuò)誤原因:吃和 " . $mail->ErrorInfo;
exit;
}
echo "郵件發送成功";
?>