簡體   English   中英

無法使用PHP Mail發送電子郵件

[英]Can't send email with PHP Mail

我正在嘗試使用php發送電子郵件。 我只有以下內容,它似乎什么都沒有輸出到我的瀏覽器,也沒有發送我的電子郵件,有人能看到我在做什么嗎?

    $to = "liam@mysite.co.uk";
$subject = "Alien Sighting";
$message = foreach ($_POST as $key=>$value) {
    $$key = $value;
}
$from = "Sighting@site.co.uk";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";

您能給我們$ _POST內容嗎?

您的PHP配置是否顯示所有錯誤消息? 確保在您的開發環境中使用error_reporting(E_ALL)來查找任何拼寫錯誤。 這應該有助於將輸出輸出到瀏覽器。

你必須一定要設置您的SMTP服務器發送,如果您運行的計算機上運行腳本,否則你可以得到一個測試服務器,所以你不必安裝在SMTP它會自動發送電子郵件

您是否正在使用Rmail.php? 您是將代碼上傳到Web服務器還是在本地PC上?

我一直在使用Rmail.php發送郵件。

$mail = new Rmail();
$mail->setFrom(YOUR ADDRESS);
$mail->setSubject(YOUR SUBJECT);
$mail->setHTML($textSchueler);
$mail->send(array($address));

您還需要檢查並確保服務器已配置為完全發送電子郵件。 雖然大多數共享主機帳戶將在您設置自己的服務器或在本地開發時為您配置,但是PHP可能沒有任何發送消息的方式。 嘗試檢查mail()函數是否返回true,指示消息已成功發送,然后查看服務器上的郵件日志以驗證傳輸。

在這種情況下,PHP不向瀏覽器輸出任何東西(即使它應該輸出任何東西),該腳本很可能在echo語句之前失敗。

確保您尚未禁用錯誤報告。 參見PHP 運行時配置 error_reportingdisplay_errors 您還可以使用代碼中的error_reporting()函數在運行時更改錯誤報告行為。 啟用錯誤報告可以幫助您確定可能是什么問題。

即使您已禁用瀏覽器上的錯誤報告,也請查看Web服務器日志。 他們應該詳細說明問題所在(腳本中的語法錯誤,郵件功能調用導致的郵件傳遞失敗……有很多可能性)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM