2011-11-28 182 views
0

我已經寫了下面的PHP腳本來發送基於表單輸入電子郵件:PHP腳本郵件工作,但電子郵件沒有到達

<?php 

$to=$_POST["email"]; 

$subject=$_POST["subject"]; 

$message=$_POST["message"]."<br />".'<img src=imgdir/'.$_POST["banimg"].'"/><br /><br />'.'<img src=addir/'.$_POST["adimg"].'"/><br /><br />'; 

$from="[email protected]"; 

$headers=array(); 
$headers[]="MIME-Version: 1.0"; 
$headers[]="Content-type: text/html; charset=iso-8859-1"; 
$headers[]="Content-Transfer-Encoding: 8bit"; 
$headers[]="From: ".$from; 

$advertised=mail($to,$subject,$message,join("\n",$headers)); 

if ($advertised){ 
echo "Working"; 
} 

?> 

我的回聲「工作」返回爲真,那麼該腳本完成但是,電子郵件沒有被髮送。

我的代碼在這裏有問題嗎?

達斯汀

+0

你檢查了你的垃圾郵件文件夾嗎? – nickb

+1

從[手冊頁](http://php.net/manual/en/function.mail.php):*重要的是要注意,僅僅因爲郵件被接受交付,並不意味着郵件將會實際上到達預定目的地*。 –

+0

是的,我做了,沒有什麼:) –

回答

1

PHP手冊指出Multiple extra headers should be separated with a CRLF (\r\n).

這可能是有問題的來源。除此之外,請確保您在php.ini中的電子郵件設置已針對本地服務器進行了正確配置,並且在服務器上安裝並運行了諸如sendmail或smtp之類的mta。

+0

謝謝,我會檢查標題問題。在這個階段,我假設這是一個服務器問題。 –

+0

可能是服務器郵件設置有問題 –

相關問題