3

我正在通过 PHP-mail() 发送 HTML 邮件。内容是一些 div 容器和一些外部图像。

在 iPhone 和 iPad 等 Apple 移动设备上,无法阅读邮件内容,而是显示“此邮件没有内容”的消息。有趣的是,在邮件应用程序的预览窗格中,我可以看到邮件的前几个字。所以内容就在那里,至少在某种程度上是这样。在 Google webmailer 中阅读同一封邮件时一切正常。

你能帮我吗?

编辑:根据要求,这是来源。$mail 具有 HTML-mailbody 作为值。

    $id = md5(uniqid(time()));
    $header= "From: Mailer <info@domain.com>\n";
    $header.= "Content-Type: multipart/mixed; boundary=".$id."\n";
    $header.= "This is a multi-part message in MIME format\n";
    $header.= "--".$id."\n";
    $header.= "MIME-Version: 1.0\n";
    $header.= "Content-type: text/html; charset=iso-8859-1\n";
    $header.= "Content-Transfer-Encoding: 8bit\n";
    $header.= $mail."\n";
    $header.= "--".$id."--";

    $betreff = mb_encode_mimeheader("subject", "UTF-8");

    mail($mailaddress, $betreff, $mail, $header);
4

2 回答 2

0

您的内容之前需要一个空行。在上面的示例中,它应该是:

“内容传输编码:8 位\n\n”

于 2014-10-09T05:35:59.283 回答
0

有一个类似的问题,我一直在研究。就我而言,问题是视图的顺序。我的和你的有点不同,有“text/html”和“text/plain”。

如果首先将“text/html”视图添加到消息中,则该消息将在预览窗格中可见,但在主电子邮件窗格中不可见,并且“text/plain”部分将在主电子邮件窗格中可见(但由于测试电子邮件没有纯文本部分,我们收到的是无内容消息)。交换消息的“text/plain”和“text/html”部分,因此 HTML 在纯文本部分之后添加到消息中,并且电子邮件的 HTML 部分在 IOS 邮件应用程序中变得可读。

于 2016-05-12T18:08:00.343 回答