2010-11-14 142 views
0

我在更改以下脚本中的“来自”电子邮件标题时遇到问题。寄托都别的办法确定,但在收到的电子邮件行是服务器的名称,而不是[email protected]php电子邮件标题

ini_set("sendmail_from", " [email protected] "); 

    $adminSendTo = "[email protected]"; 

    $adminSubject = "Contact Form"; 
    $adminMessage = "Contact Form: $subfirstname $sublastname \r\rEmail: $subemail \r\rSubject of feedback: $subsubject \r\rComments: $subcommentquestion\r\n"; 
    $adminHeaders = "From: My website Contact Form\r\n"; 
    $adminHeaders = "Reply-To: [email protected]"; 

    mail($adminSendTo, $adminSubject, $adminMessage, $adminHeaders); 

我需要在php.ini文件中更改设置这个工作?

+0

您*必须*在* From *字段中提供[有效邮箱](http://tools.ietf.org/html/rfc5322#section-3.6.2)。你使用的是不允许的。 – Gumbo 2010-11-14 15:57:49

回答

3

其实,你不提供任何“From”字段。

写:

$adminHeaders = "From: My website Contact Form\r\n"; 
$adminHeaders = "Reply-To: [email protected]"; 

您分配“从......”$adminHeaders,然后覆盖只是一个新的价值下一行“回复......”

相反,你应该写:

$adminHeaders = "From: My website Contact Form\r\n"; 
$adminHeaders .= "Reply-To: [email protected]"; 

这里,“回复......”将级联到$adminHeaders实际值,而不是覆盖它。

+0

当然!我相信我以前犯过同样的错误。感谢他的帮助。 – 2010-11-16 18:33:34

0

你破坏了数据!

使用。=将字符串连接在一起。

如果您使用“$ var = some_value;”两次,那么只有第二次出现才算数。