这是构建/发送电子邮件的脚本:
$boundary = md5(date('U')); $to = $email; $subject = "My Subject"; $headers = "From: myaddress@mydomain.com" . "\r\n". "X-Mailer: PHP/".phpversion() ."\r\n". "MIME-Version: 1.0" . "\r\n". "Content-Type: multipart/alternative; boundary=--$boundary". "\r\n". "Content-Transfer-Encoding: 7bit". "\r\n"; $text = "You really ought remember the birthdays"; $html = 'Birthday Reminders for August Here are the birthdays upcoming in August!
Person | Day | Month | Year |
---|---|---|---|
Joe | 3rd | August | 1970 |
Sally | 17th | August | 1973 |
它发送消息就好了,我的收件人收到了它,但是他们用text/plain而不是multipart/alternative来获取整个内容.查看收到的消息的来源给出了这一点(删除了许多内容):
Delivered-To: myrecipient@example.com Received: by 10.90.100.4 with SMTP id x4cs111413agb; Wed, 25 Mar 2009 16:39:32 -0700 (PDT) Received: by 10.100.153.6 with SMTP id a6mr85081ane.123.1238024372342; Wed, 25 Mar 2009 16:39:32 -0700 (PDT) Return-Path:--- snip --- Date: Wed, 25 Mar 2009 17:37:36 -0600 (MDT) Message-Id: <200903252337.n2PNbaw2019541@www.xxxxxxx.com> To: trevor@saturdayplace.com Subject: My Subject From: me@mydomain.com X-Mailer: PHP/4.3.9 MIME-Version: 1.0 Content-Type: text/plain; boundary="--66131caf569f63b24f43d529d8973560" Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 25 Mar 2009 23:38:30.0531 (UTC) FILETIME=[CDC4E530:01C9ADA2] X-TM-AS-Product-Ver: SMEX-8.0.0.1181-5.600.1016-16540.005 X-TM-AS-Result: No--4.921300-8.000000-31 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No Multipart Message coming up --66131caf569f63b24f43d529d8973560 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit You really ought remember the birthdays --66131caf569f63b24f43d529d8973560 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Birthday Reminders for August Here are the birthdays upcoming in August!
--66131caf569f63b24f43d529d8973560--
Person Day Month Year Joe 3rd August 1970 Sally 17th August 1973
看起来内容类型标题在从multipart/alternative到text/plain的过程中发生了变化.我不是系统管理员,所以如果这是一个sendmail问题,我就会在我脑海中.有什么建议?
这条线
"Content-Type: multipart/alternative; boundary=--$boundary". "\r\n".
应该
"Content-Type: multipart/alternative; boundary=$boundary". "\r\n".
您不在标题中包含短划线.