iPhone在简报邮件中显示plain和html

时间:2013-08-26 13:53:45

标签: iphone email mime

我已经设置了一个包含文本区域的多部分mime电子邮件,以及一个html版本的简报的一个区域。一切正常,除了我的iPhone。它首先显示文本版本,然后显示HTML版本。但我没有任何想法为什么......: - /

这是PHP:

$to = $_POST['email'];
$subject = 'Test';
$bound_text = 'boundary42';

$headers = "From: sender@sender.net\r\n";
$headers .= "MIME-Version: 1.0\r\n"
        . "Content-Type: multipart/mixed; boundary=\"$bound_text\"";

$message = file_get_contents('mime.file');

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

文件内容:

MIME-Version: 1.0 
Content-Type: multipart/mixed; boundary=boundary42 

This is a message with multiple parts in MIME format.
--boundary42 
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit

Text goes here     

--boundary42 
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http://www.w3.org    /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    </head>
    <body style="margin:0;padding:0;font-family: arial, 'Arial';">
        html goes here
    </body>
</html>

--boundary42--

1 个答案:

答案 0 :(得分:0)

请参阅MIME type to satisfy HTML, email, images and plain text?Mail multipart/alternative vs multipart/mixed

您构建的是一个multipart / 混合容器,其中包含两个内容:text和plain。对于混合,渲染两者都是正确的。

你可能想要的是一个multipart / 替代容器来容纳这两件事。