Php 带附件的多部分/备选方案
我正在尝试创建一封Php 带附件的多部分/备选方案,php,email,Php,Email,我正在尝试创建一封多部分/混合电子邮件,其中一部分是多部分/备选(html/text),另一部分是附件 我找到了答案 ,但无法使其工作 我发现在multipart/mixed中使用了multipart/alternative,具有不同的边界 我找到了一个例子。这个例子看起来像我正在寻找的,但是我的代码不起作用。我要么收到一封带有3个附件(.dat、.html和.pdf)的空电子邮件,要么收到一封带有一个二进制“.dat”附件的空电子邮件 我的代码有什么问题: Date: Sun, 08 Sep
多部分/混合
电子邮件,其中一部分是多部分/备选
(html/text),另一部分是附件
我找到了答案
,但无法使其工作
我发现在multipart/mixed
中使用了multipart/alternative
,具有不同的边界
我找到了一个例子。这个例子看起来像我正在寻找的,但是我的代码不起作用。我要么收到一封带有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--
日期:2013年9月8日星期日10:38:15+0700
主题:测试的登录详细信息
致:test@test.com
X-PHP-origing-Script:0:Mail.class.PHP
发件人:没有_reply@localhost
MIME版本:1.0
内容类型:多部分/混合;边界=“38651c4450f87348fcbe1f992746a954”
--38651c4450f87348fcbe1f992746a954
内容类型:混合/备选;boundary=“sub38651C4450F87348FCBE1F992746A954”
--sub_38651c4450f87348fcbe1f992746a954
内容类型:文本/纯文本;charset=“UTF-8”
内容传输编码:7bit
纯文本消息
--sub_38651c4450f87348fcbe1f992746a954
内容类型:text/html;charset=“UTF-8”
内容传输编码:7bit
亲爱的[realname],
您已请求重新发送登录凭据以进行测试。
HTML消息
--sub_38651c4450f87348fcbe1f992746a954--
--38651c4450f87348fcbe1f992746a954
内容类型:应用程序/八位字节流;name=“test.pdf”
内容处置:附件;
filename=“test.pdf”
内容传输编码:base64
JVBERi0xLjMKMyAwIG9iago8PC9UeXBlIC9QYWdlCi9QYXJlbnQgMSAwIFIKL1Jlc291cmNlcyAy
IDAgUgovQ29udGVudHMgNCAwIFI+PGPLBMRVYMOKNCAWIG9IAGO8PC9GAWX0ZXIGL0ZSYXRLRRGVJ
等等等等
--38651c4450f87348fcbe1f992746a954--
您编写了mixed/alternative
,当它应该是多部分/alternative
时,最好尝试使用PHPMailer。它是非常容易使用的广告配置。在示例目录中,您还可以看到多个附件的解决方案。我在用这个
成功了!看起来我是在盯着自己的代码看的时候瞎了眼。谢谢你,巴尔马!