2017-02-28 48 views
-1

我提出建議的更改sendemail.php文件,所以整個文件現在包含...PHP電子郵件的形式仍然沒有工作,雖然代碼顯然是正確的

<?php 
$name  = @trim(stripslashes($_POST['name'])); 
$from  = @trim(stripslashes($_POST['email'])); 
$subject = @trim(stripslashes($_POST['subject'])); 
$message = @trim(stripslashes($_POST['message'])); 
$to   = '[email protected]'; 

$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 
$headers .= "From: {$name} <{$from}>\r\n"; 
$headers .= "Reply-To: <{$from}>\r\n"; 
$headers .= "Subject: {$subject}\r\n"; 
$headers .= "X-Mailer: PHP/".phpversion()."\r\n"; 

$sent = mail($to, $subject, $message, $headers); 
die; 

嘗試另一個測試消息後,沒有得到任何在我的電子郵件收件箱中。

+0

你不斷覆蓋標題。回到'mail()'手冊。 –

+0

*「提供的代碼包括昨晚在此論壇的建議後對原始代碼所做的更改。」* - 我確定希望看到這一點。 –

+0

或切換到[PHPMailer](https://github.com/PHPMailer/PHPMailer),它更容易與 – Machavity

回答

1

嘗試更換:

$headers = "MIME-Version: 1.0\r\n"; 
$headers = "Content-type: text/plain; charset=iso-8859-1\r\n"; 
$headers = "From: {$name} <{$from}>\r\n"; 
$headers = "Reply-To: <{$from}>\r\n"; 
$headers = "Subject: {$subject}\r\n"; 
$headers = "X-Mailer: PHP/".phpversion()."\r\n"; 

$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 
$headers .= "From: {$name} <{$from}>\r\n"; 
$headers .= "Reply-To: <{$from}>\r\n"; 
$headers .= "Subject: {$subject}\r\n"; 
$headers .= "X-Mailer: PHP/".phpversion()."\r\n"; 

它的失敗,因爲你沒有設置你的$ headers正確,重寫你的頭,在每一行,你分配一個剛過值,下一行你覆蓋以前的值。

+1

*「Try」*搭配使用 - 並不能解釋爲什麼它失敗。 –

+0

@ Fred-ii-更新 –

+0

這對OP和未來訪問者來說都好多了;-)。 –

相關問題