Thanks Richard for your response,
Since the code is a little long, I didn't want to post too much, so
I just put the last part with the headers I was using.
also, since the mailer worked previously,
I was thinking it was just the new header info I was plugging in
so to do the whole checking if a user can receive HTML emails or text.
Any thoughts on what order I should be putting the headers I have?
TIA,
Karl
On Jan 30, 2010, at 7:13 AM, Richard Quadling wrote:
> On 30 January 2010 13:04, Karl DeSaulniers <karl@designdrumm.com>
> wrote:
>> Hi List,
>> Good morning. Hope all are well on this Saturday.
>> I am in need of a little assistance. I am creating an HTML email.
>> I have created it successfully already, so I know the code works
>> for the
>> HTML part.
>> My question is about the headers of the message.
>>
>> Here is my code at the end before the message is sent off.
>>
>> //other code that sets up $html and $text
>>
>> if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
>> $eol="\r\n";
>> } else if (strtoupper(substr(PHP_OS, 0, 3) == 'MAC')) {
>> $eol="\r";
>> } else {
>> $eol="\n";
>> }
>>
>> // To send HTML mail, the Content-type header must be set
>> $headers = 'From: '.$from.$eol;
>> $headers .= 'To: "'. $username .'" <' . $email . '>'.$eol;
>>
>> //$headers .= 'Cc: ' . $from;
>> //$headers .= 'BCc: ' . $from;
>> $headers .= 'Reply-To: ' . $from .$eol;
>>
>> $headers .= 'X-Mailer: PHP/' . phpversion().$eol;
>> $headers .= 'X-sender: <' . $from . '>'.$eol;
>> $headers .= 'X-receiver: <' . $email . '>'.$eol;
>>
>> $headers .= 'Message-ID: <'.$MessageID.'@'.$host.'>'.$eol;
>> $headers .= 'Date: '.$time.$eol;
>>
>> // Additional headers
>> $headers .= 'X-Priority: 1'.$eol;
>> $headers .= 'X-MSMail-Priority: High'.$eol;
>> $headers .= 'X-MimeOLE: Generated By Design Drumm - MultiPart/Alt
>> E-Mail'.$eol;
>>
>> $headers .= 'MIME-Version: 1.0' . $eol;
>> $headers .= 'Content-type: multipart/alternative';
>> $headers .= 'boundary="'.$boundary.'"' . $eol.$eol;
>>
>> // Make sure there are no bare linefeeds in the headers
>> //$headers = preg_replace('#(?<!\r)\n#si', "\r\n", $headers); //
>> I found
>> this code. Can anyone tell me if it works.
>>
>> $message = '--'.$boundary.$eol;
>> $message .= 'Content-type: text/html; charset="UTF-8"'.$eol;
>> $message .= 'Content-Transfer-Encoding: 8bit'.$eol.$eol;
>> $message .= $html.$eol.$eol;
>>
>> $message .= '--'.$boundary.$eol;
>> $message .= 'Content-type: text/plain; charset="UTF-8"'.$eol;
>> $message .= 'Content-Transfer-Encoding: quoted-printable'.$eol.$eol;
>>
>> $message .= $text.$eol.$eol;
>> $message .= '--'.$boundary.'--'.$eol.$eol;
>>
>> return mail($email, $subject, $message, $headers);
>>
>> }
>>
>> My question is what order should the headers be in from top to
>> bottom that I
>> have to work properly?
>> Currently it does not display the HTML on MAC but it does in
>> Hotmail. MAC
>> mail is grabbing the text version.
>> So my susspicion is that the headers are just wrong.
>>
>> It has worked on MAC mail before I tried the MIME boundaries.
>>
>> TIA,
>>
>>
>> Karl DeSaulniers
>> Design Drumm
>> http://designdrumm.com
>>
>>
>
> I would simplify all of this by using a PHP class specifically
> covering this issue.
>
> I use the html_mime_mail5 class from phpguru.org (now called RMail) at
> http://www.phpguru.org/static/Rmail
>
> Though, you'll probably find PHPMailer is the most commonly used class
> at http://phpmailer.worxware.com/
>
> --
> -----
> Richard Quadling
> "Standing on the shoulders of some very clever giants!"
> EE : http://www.experts-exchange.com/M_248814.html
> EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
> Zend Certified Engineer : http://zend.com/zce.php?
> c=ZEND002498&r=213474731
> ZOPA : http://uk.zopa.com/member/RQuadling
>
> --
> PHP Database Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
Karl DeSaulniers
Design Drumm
http://designdrumm.com
|