PHP电子邮件的形式仍然没有工作,虽然代码显然是正确的

问题描述:

我提出建议的更改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

尝试更换:

$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和未来访问者来说都好多了;-)。 –