可能重复:
How to send email with attachment using PHP?
PHP mail() attachment problems
我正在尝试实现此脚本: Send PHP HTML mail with attachments
我在脚本中修改的唯一内容是发送地址和文件。我正在尝试附加.mp3
文件而不是.zip
文件 - 也许这就是我得到意外结果的原因?
.mp3
文件只有31kb
但是当我收到电子邮件时,邮件中没有附件也没有HTML格式。
电子邮件信息包含:
--PHP-mixed-a80d597fc7c02e67ff5be867c7a48bab
Content-Type: multipart/alternative; boundary="PHP-alt-a80d597fc7c02e67ff5be867c7a48bab"
--PHP-alt-a80d597fc7c02e67ff5be867c7a48bab
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Hello World!!!
This is simple text email message.
--PHP-alt-a80d597fc7c02e67ff5be867c7a48bab
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
<h2>Hello World!</h2>
<p>This is something with <b>HTML</b> formatting.</p>
--PHP-alt-a80d597fc7c02e67ff5be867c7a48bab--
--PHP-mixed-a80d597fc7c02e67ff5be867c7a48bab
Content-Type: application/zip; name="attachment.zip"
Content-Transfer-Encoding: base64
Content-Disposition: attachment
SUQzAwAAAAABIVRQRTEAAAAfAAAB//5DAGgAZQBlAHMAZQBDA.....
答案 0 :(得分:0)
我在你的邮件中看到这一行:
内容类型:application / zip;名称= “attachment.zip”
您正在附加一个mp3文件,因此您的内容类型应为audio / mpeg3,文件名应根据您发送的内容而定。
Content-Type:audio / mpeg3;名称= “somefile.mp3”
另外 - 注意64位编码。您必须对mp3进行编码才能发送邮件,因为如果不这样做,您将再次获得意外结果。