php配置mail
⑴ php mail()的問題
你的PHP是在WINDOWS上運行吧,那麼需要在PHP.INI文件裡面檢查下面行的內容:
[mail function]
SMTP = localhost
smtp_port = 25
;sendmail_from = [email protected]
前面兩行設置SMTP的伺服器地址和埠,最後一行設置默認的發件人地址(不是必需設置的)。
發信的mail函數格式如下:
bool mail ( string to, string subject, string message [, string additional_headers [, string additional_parameters]] )
前面三個參數是對方地址、郵件標題、正文,例如:
<?php
// The message
$message = "Line 1\nLine 2\nLine 3";
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70);
// Send
mail('[email protected]', 'My Subject', $message);
?>
後面的參數可以用來進行設置郵件的頭部信息,例如指定發件人地址,例如:
<?php
$to = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
⑵ php 發送郵件 要怎麼配置
在Windows平台下使用mail函數發送郵件,記錄如下
php.ini的設置:
SMTP = localhost
smtp_port = 25
sendmail_from=你的設定值
另外,還需要安裝IIS自帶的SMTP,在SMTP虛擬伺服器上點擊右鍵,在彈出的屬性窗口裡進行如下設置:
點擊訪問選項卡,再點擊中繼,在彈出的窗口出點擊添加,然後選單台計算機,添加IP地址為 127.0.0.1。然後一路確定返回。(不進行此項設置,可能會出現:SMTP server response: 550 5.7.1 Unable to relay for [email protected]。。。的錯誤)
這樣就可以使用mail函數了
<?php
mail("[email protected]","Test mail function of PHP.","hello world!");
?>
⑶ 請問一下,PHP配置SMTP怎麼弄
PHPMailer的獲取:
PHPMailer項目地址:PHPMailer 使用git命令克隆到本地,或直接在該項目頁面的右下方點擊「 Download ZIP 」即可獲取到完整的PHPMailer代碼包,再到本地解壓即可。
步驟一:使我們的QQ郵箱能夠發送郵件
這里怎麼說能夠發送郵件呢?其實我們的郵箱都是可以發送郵件的,但是要實現在我們的網站中發送郵件,那就要設置一下我們的QQ郵箱了,因為此時我們的網站現在是作為一個第三方客戶端存在的。
步驟一:使我們的QQ郵箱能夠發送郵件
這里怎麼說能夠發送郵件呢?其實我們的郵箱都是可以發送郵件的,但是要實現在我們的網站中發送郵件,那就要設置一下我們的QQ郵箱了,因為此時我們的網站現在是作為一個第三方客戶端存在的
由於待會我們用到的是SMTP伺服器來發送,在這里建議把前面的兩項開啟了!當你點擊開啟的時候,它會提示:
<?phprequire_once("./functions.php");$flag=sendMail('[email protected]','lsgo在線通知','恭喜你成功加入LSGO實驗室,開啟你的學習之旅吧!');if($flag){echo"發送郵件成功!";
}else{echo"發送郵件失敗!";
}?>
⑷ 瑙e喅windows緋葷粺涓媝hp.ini閭浠墮厤緗姝g『涓嶅彂閫侀偖浠剁殑闂棰
Warning: mail() [function.mail]: SMTP server response: 530 5.7.0 Must issue a STARTTLS command first
php mail()鍑芥暟鍦╳indows涓嶈兘鐢錛岄渶瑕佸畨瑁卻endmail
1.浠http://glob.com.au/sendmail/涓嬭澆sendmail.zip
2.瑙e帇鍒癈:涓嬶紝渚嬪侰:/php/sendmail錛屾渶濂界煭璺寰勶紝闀胯礬寰勫悕鏈夊彲鑳戒駭鐢熼棶棰樸
3.淇鏀筽hp.ini濡備笅
sendmail_path = "C:/wamp/sendmail/sendmail.exe -t"
4.鏍規嵁浣犺嚜宸辯殑閰嶇疆鐜澧冧慨鏀箂endmail.ini銆
絎涓嬈℃渶濂藉惎鐢╠ebug.log_file,error_logfile錛屼互鏌ョ湅sendmail鏄鍚︾敓鏁堛
5.閲嶅惎apache
鐢╯endmail緇撳悎鍏跺畠鐨剆mtp鏈嶅姟鍣錛屽俿mtp.163.com鏉ュ疄鐜板彂閭浠躲傜幇鍦ㄥぇ閮ㄥ垎閭綆遍兘瑕佹眰smtp楠岃瘉錛屾墍浠ヨ佸湪sendmail.ini涓鍔犲叆鐢ㄦ埛鍚嶅拰瀵嗙爜銆
php.ini閰嶇疆 (浠ョ敤163閭綆變負渚)
澶嶅埗浠g爜
浠g爜濡備笅:
[mail function]
; For Win32 only.
SMTP = smtp.163.com
smtp_port = 25
; For Win32 鈥︹
鐢╯endmail緇撳悎鍏跺畠鐨剆mtp鏈嶅姟鍣錛屽俿mtp.163.com鏉ュ疄鐜板彂閭浠躲傜幇鍦ㄥぇ閮ㄥ垎閭綆遍兘瑕佹眰smtp楠岃瘉錛屾墍浠ヨ佸湪sendmail.ini涓鍔犲叆鐢ㄦ埛鍚嶅拰瀵嗙爜銆
php.ini閰嶇疆 (浠ョ敤163閭綆變負渚)
澶嶅埗浠g爜
浠g爜濡備笅:
[mail function]
; For Win32 only.
SMTP = smtp.163.com
smtp_port = 25
; For Win32 only.
sendmail_from = [email protected]
; For Unix only. You may supply arguments as well (default: 鈥渟endmail -t -i鈥).
sendmail_path = 鈥淒:/xampp/sendmail/sendmail.exe -t鈥
灝遍厤緗涓夐」錛宻mtp銆乻mtp_port鍜宻endmail_path
sendmail.ini閰嶇疆
澶嶅埗浠g爜
浠g爜濡備笅:
[sendmail]
; you must change mail.mydomain.com to your smtp server
smtp_server=smtp.163.com
smtp_port=25
auth_username=yourusername
auth_password=yourpassword
[email protected]
sendmail緗戜笂鏈変笅鐨勶紝濡傛灉浣犳槸鐢▁ampp錛岄偅閲岄潰鐩存帴灝卞甫浜嗐
鍚屾椂鍦ㄨ櫄鎷熶富鏈虹殑conf閲屽姞涓婅繖鏍蜂竴鍙
澶嶅埗浠g爜
浠g爜濡備笅:
php_admin_value sendmail_path 鈥楧:/xampp/sendmail/sendmail.exe -t [email protected]鈥
姝ら偖浠跺湴鍧涓虹敤鎴風殑閭浠跺湴鍧錛岄殢渚挎坊銆
⑸ 怎樣讓Ubuntu系統支持php用mail()函數發送郵件呢
如果需要用php的mail()函數來發送郵件,
是需要伺服器安裝sendmail組件才能支持的,
這個在php的手冊中mail()函數部分也有介紹到。
在Ubuntu下安裝sendmail的命令:
sudo apt-get install sendmail
安裝好之後,啟動sendmail服務:
sudo service sendmail start
有了sendmail的支持,就可以在php中用mail()函數發送郵件了。
⑹ 如何使用php中的mail函數發送html格式的信
採用phpmailer類,來做郵件發送,是很多PHP程序所採用的一個類發送
require(ROOT.'/class/phpMailer.class.php');//郵件發送類
/**
*發送郵件
*@paramstring$to接收人郵件地址
*@paramstring$title郵件標題
*@paramstring$contents郵件內容支持HTML格式
*@paramstring$type判斷是否要加附件
*@paramstring$accessory附件的名字
*@return成功返回true,失敗返回錯誤信息
*/
functionsendEmail($to,$title,$contents,$type='',$accessory=''){
$mail=newPhpMailer(true);
$mail->IsSMTP();
$mail->CharSet="UTF-8";//編碼
$mail->Debugoutput='html';//支持HTML格式
$mail->Host=T_SMTP_SERVER;//HOST地址
$mail->Port=25;//埠
$mail->SMTPAuth=true;
$mail->Username=T_SMTP_LOGIN;//用戶名
$mail->Password=T_SMTP_PASSWORD;//密碼
$mail->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME);//發件人地址,發件人名稱
$mail->AddAddress($to);//收信人地址
//$mail->Subject="=?utf-8?B?".base64_encode()."?=";
if(!empty($type)){
$mail->AddAttachment($type,$accessory);//添加附件,並指定名稱
}
$mail->Subject=$title;//郵件標題
$mail->MsgHTML($contents);
if($mail->Send()){
returntrue;
}else{
return$mail->errorMessage();
}
}