如何避免在邮件功能中显示HTML标签

时间:2010-08-13 11:21:26

标签: php html

我有邮件功能,工作正常,我收到邮件。但问题是我也得到了HTML标签。我的代码如下:

$from=$_REQUEST['id'];  
$to  = 'xyz@abc.com';  

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

$headers = "From: $from \r\n" .  
    "Reply-To: $from \r\n" .  
    "X-Mailer: PHP/" . phpversion();  

$subject="Contact Mail has received";  

$message=" SOME HTML TAGS ";

在邮件正文中,我有tabletrtd等HTML标记。但是当我收到邮件时,我没有得到表格。我将所有HTML标记设为tabletrtd。在标题中,我甚至将内容类型指定为text/html,但我仍然遇到同样的问题。

我该如何避免这种情况?

1 个答案:

答案 0 :(得分:7)

您尚未指定text/html,因为您正在覆盖标题!

在这里,你分配它然后覆盖它:

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

$headers = "From: $from \r\n" .  
       "Reply-To: $from \r\n" .  
       "X-Mailer: PHP/" . phpversion();  

应该是

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

$headers .= "From: $from \r\n" .  
       "Reply-To: $from \r\n" .  
       "X-Mailer: PHP/" . phpversion();  

你错过了一个点来附加更多标题。这会覆盖您的Content-Type,这就是为什么它将电子邮件解析为文本而不是HTML