我遇到的问题是,当我使用mail()
发送邮件时,它会在邮件中发送HTML代码。这是我的代码:
<?php
$message = "<table width='100%' border='0' cellspacing='0' cellpadding='3'>
<tr>
<td colspan=2>Dear ".$_POST['fname']." ".$_POST['lname'].",</td>
</tr>
<tr>
<td colspan=2>Thank you for contacting us.We will get back to you in next 48 hrs.Your Contacts Details are as follows:</td>
</tr>
<tr>
<td width='28%' >Title</td>
<td width='72%'>".$_POST['title']."</td>
</tr>
<tr>
<td>Email</td>
<td>".$_POST['email']."</td>
</tr>
<tr>
<td>Your Message</td>
<td>".$_POST['message']."</td>
</tr>
<tr>
<td>How did you hear about us? </td>
<td>".$checkBox."</td>
</tr>
</table>
";
$subject = "ContactUs";
$headers .= "From: ".$from_mail." \r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
mail($_POST["coach"], $subject, $message, $headers);
?>
我在电子邮件中收到的输出如下:
<table width='100%' border='0' cellspacing='0' cellpadding='3'>
<tr>
<td colspan=2>Dear Test User,</td>
</tr>
<tr>
<td colspan=2>Thank you for contacting us.Your Contacts Details are as follows:</td>
</tr>
<tr>
<td width='28%' >Title</td>
<td width='72%'>Mr.</td>
</tr>
<tr>
<td>Email</td>
<td>test@example.com</td>
</tr>
<tr>
<td>Your Message</td>
<td>Test Message</td>
</tr>
<tr>
<td>How did you hear about us? </td>
<td>www.example.com</td>
</tr>
</table>
我不知道为什么会这样。任何建议将不胜感激。
答案 0 :(得分:3)
试试这个
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset: utf8\r\n";
还可以尝试:PHPMailer
答案 1 :(得分:0)
使用
html_entity_decode()
eg. mail($_POST["coach"], $subject, html_entity_decode($message), $headers);
答案 2 :(得分:0)
在标题部分
中添加以下代码<?php
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
?>