带有特定服务器的php函数邮件的附加标题问题

时间:2011-02-18 21:44:06

标签: php email-headers

我在php中有一个电子邮件功能:

function send_mail($to, $from, $objet, $message) {
$entetemail  = 'MIME-Version: 1.0' . "\r\n";  
$entetemail .= 'Content-type: text/plain; charset=UTF-8' . "\r\n";  
$entetemail .= 'From: '.$from. "\r\n";  
$entetemail .= 'Cc: ' . "\r\n";  
$entetemail .= 'Bcc: ' . "\r\n";  
$entetemail .= 'Reply-To: '.$from .''. "\r\n";  
$entetemail .= 'X-Mailer: PHP/' . phpversion() . "\r\n" ;  
$entetemail .= 'Date: '. date("D, j M Y H:i:s -0600");  
return mail($to, $objet, $message, $entetemail);  
}

$ to是有效的电子邮件地址。 $看起来像:

Firstname name <email@example.com>

$ objet和$ message分别来自输入文本和textarea。

我没有PHP错误,邮件发送给我错误的回复。

在回显之后,我的标题看起来像在服务器上:

MIME-Version: 1.0
Content-type: text/plain; charset=UTF-8
From: Firstname Name 
Cc: 
Bcc: 
Reply-To: Firstname Name 
X-Mailer: PHP/4.4.9
Date: Fri, 18 Feb 2011 23:35:58 -0600

在我的本地服务器上一切都很好。但是在生产过程中,由于来自变量的$,From行会产生问题。电子邮件将不会发送。 我做错了什么吗?是否存在破坏一切的服务器配置?

1 个答案:

答案 0 :(得分:1)

事实上它确实奏效了。

我刚用假电子邮件地址完成了所有测试。似乎生产服务器不喜欢它,但我的当地人并不关心。

我想知道怎么做,但我稍后会看到。