我正在尝试创建一个multipart/mixed
电子邮件,其中multipart/alternative
(html / text)作为一个部分,附件作为另一部分。
我找到了答案here ,但无法让它发挥作用。
我发现的是在multipart/alternative
内multipart/mixed
使用不同的边界。
我找到了一个例子here。这个例子看起来像我在寻找,但我的代码不起作用。我收到一封包含3个附件(.dat,.html和.pdf)的空电子邮件,或者带有一个二进制“.dat”附件的空电子邮件。
我的代码出了什么问题:
Date: Sun, 08 Sep 2013 10:38:15 +0700
Subject: Login details for Test
To: test@test.com
X-PHP-Originating-Script: 0:Mail.class.php
from: no_reply@localhost
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="38651c4450f87348fcbe1f992746a954"
--38651c4450f87348fcbe1f992746a954
Content-Type: mixed/alternative; boundary="sub_38651c4450f87348fcbe1f992746a954"
--sub_38651c4450f87348fcbe1f992746a954
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Plain text message
--sub_38651c4450f87348fcbe1f992746a954
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Dear [realname],<br><br>
You've requested to resend your login credentials for Test.<br><br>
<b>HTML</b> message
--sub_38651c4450f87348fcbe1f992746a954--
--38651c4450f87348fcbe1f992746a954
Content-Type: application/octet-stream; name="test.pdf"
Content-Disposition: attachment;
filename="test.pdf"
Content-Transfer-Encoding: base64
JVBERi0xLjMKMyAwIG9iago8PC9UeXBlIC9QYWdlCi9QYXJlbnQgMSAwIFIKL1Jlc291cmNlcyAy
IDAgUgovQ29udGVudHMgNCAwIFI+PgplbmRvYmoKNCAwIG9iago8PC9GaWx0ZXIgL0ZsYXRlRGVj
etc, etc
--38651c4450f87348fcbe1f992746a954--
答案 0 :(得分:0)
您写的mixed/alternative
应为multipart/alternative
。
答案 1 :(得分:0)
最好尝试使用 PHPMailer 。它非常易于使用广告配置。在示例目录中,您还可以看到多个附件的解决方案。我正在使用它。