2009-12-01 173 views
0

我正在使用邮件功能将html发送到电子邮件地址,但From姓名和电子邮件地址未显示。这是我的代码:为什么From行不能用于我的邮件功能?

$name = $_POST['name']; 
$mailTo = '[email protected]'; 
$subject = 'Message from ' . $_POST['name']; 
$message = 
      '<html> 
      <head> 
      <title>HTML email</title> 
      </head> 
      <body> 
      <p><b>Name:</b> ' . $_POST['name'] . '</p> 
      <p><b>Email:</b> ' . $_POST['email'] . '</p> 
      <p><b>Message:</b> ' . $_POST['mainmessage'] . '</p> 
      </body> 
      </html>'; 

$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'From: Postmaster <[email protected]>'; 

mail($mailTo, $subject, $message, $headers); 

我期望的电子邮件显示为来自邮政处于电子邮件地址[email protected],但它显示为来自[email protected]到来,这是我的托管服务提供商。

我没有正确设置什么?

回答

0

Chris,尝试在<[email protected]>之后加上\r\n。我发现,在与邮件服务器交谈时,php可能非常挑剔。

编辑:只是为了帮助更多一点,我有这样的(几乎完全你有什么)在我的工作脚本之一:

$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'To: '.$to . "\r\n"; 
$headers .= 'From: ' .$from. "\r\n"; 

...其中$from = $fromname.' <'.$fromemail.'>';和$到只是一个电子邮件地址。

+0

yup!修复它。谢谢! – zeckdude 2009-12-01 05:08:37

相关问题