我正在使用PHP imap将电子邮件存储在数据库中以便稍后阅读。我用来存储电子邮件的代码:
$insertquery = $cbecc->prepare("INSERT INTO emails (emailID, emailThreadID, emailBody) VALUES (NULL, :etid, :body)");
$insertquery->bindParam(":etid", $matches[2]);
$insertquery->bindParam(':body', imap_fetchbody($inbox,$email_number,1.2));
$insertquery->execute();
我以1.2格式存储它,这样当我显示它时,没有任何格式丢失
我用来显示消息的代码:
$emailgetquery = $cbecc->prepare("SELECT * FROM emails");
$emailgetquery->execute();
echo "<table border='1'>";
while ($emailrow = $emailgetquery->fetch()){
echo "<tr><td>".quoted_printable_decode($emailrow['emailBody'])."</td></tr>";
}
echo "</table>";
邮件以Quoted Printable格式存储。问题是电子邮件正在将其添加到我网站上的html标记中:
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
xmlns="http://www.w3.org/TR/REC-html40">
据我所知,每条电子邮件的开头都是。据我所知,这打破了我的CSS代码。
是否可以阻止电子邮件更改我的代码?或者一些CSS来防止变化?是否可以在数据库输入阶段删除它而不影响结果输出?