Recommend this page to a friend! |
MIME E-mail message sending | > | MIME E-mail message sending package blog | > | How Can PHP Send Emai... | > | All threads | > | HTML message sent to multiple... | > | (Un) Subscribe thread alerts |
|
![]() Hi!
I've been trying to send HTML message in the form of "send to a friend". The user enter 1-5 email address and it sends them a HTML message. Is it possible to send with your class, only with email adresses and not names? Thank you Guillaume Revolver www.revolver3.com
![]() Oh, and I want them to receive individual emails. Meaning I don't want them to see the other email addresses its being sent to, is that possible?
Thank you! My email is guillaume.lambert@revolver3.com, if you could send the awnser there, it would be extremely appreciated Guillaume
![]() And while we're at it, in hotmail, the message goes directly into my junkmail box. Here's the code, if that can help :
-- $recipients = ''; // Email to send to if ($_POST['email1'] != '') { $recipients[$_POST['email1']] = 'Équita'; } if ($_POST['email2'] != '') { $recipients[$_POST['email2']] = 'Équita'; } if ($_POST['email3'] != '') { $recipients[$_POST['email3']] = 'Équita'; } if ($_POST['email4'] != '') { $recipients[$_POST['email4']] = 'Équita'; } if ($_POST['email5'] != '') { $recipients[$_POST['email5']] = 'Équita'; } // Message $body = '<html><body bgcolor="#ffffff"><div align="center"><a href="http://www.equita.qc.ca/riz/"><img src="http://www.equita.qc.ca/riz/images/oxfam_email.jpg" width="600" height="400" border="0" alt=""></a></div></body></html>'; $from_address='info@commerceequitable.com'; $from_name='Équita'; $reply_name=$from_name; $reply_address=$from_address; $reply_address=$from_address; $error_delivery_name=$from_name; $error_delivery_address=$from_address; $subject="Une invitation spéciale d'Équita"; $email_message=new email_message_class; $email_message->SetMultipleEncodedEmailHeader('To', $recipients); $email_message->SetEncodedEmailHeader("From",$from_address,$from_name); $email_message->SetEncodedEmailHeader("Reply-To",$reply_address,$reply_name); $email_message->SetHeader("Sender",$from_address); if(defined("PHP_OS") && strcmp(substr(PHP_OS,0,3),"WIN")) { $email_message->SetHeader("Return-Path",$error_delivery_address); } $email_message->SetEncodedHeader("Subject",$subject); $html_message = '<html><body bgcolor="#ffffff"><div align="center"><a href="http://www.equita.qc.ca/riz/"><img src="http://www.equita.qc.ca/riz/images/oxfam_email.jpg" width="600" height="400" border="0" alt=""></a></div></body></html>'; $email_message->CreateQuotedPrintableHTMLPart($html_message,"",$html_part); $text_message="Le riz équitable arrive au Québec !\n\nLe 16 octobre prochain, entre 11h et 15h, venez célébrer le lancement de notre nouveau riz équitable à la Place centrale du Marché Jean-Talon. Joignez-vous à nous pour des dégustations uniques préparées par Josée di Stasio et plusieurs chefs réputés de Montréal.\n\nPour visionnez le clip promotionnel, veuillez visiter le http://www.equita.qc.ca/riz/"; $email_message->CreateQuotedPrintableTextPart($email_message->WrapText($text_message),"",$text_part); $alternative_parts=array( $text_part, $html_part ); $email_message->AddAlternativeMultipart($alternative_parts); $error=$email_message->Send(); if (strcmp($error,"")) { echo "Error: $error\n"; } else { echo "Message sent\n"; } -- Thanks!
![]() Sure. Just use the function SetHeader("To", "email@adress.com"); and send different messages for each user.
![]() I am not sure but the message may be going to the junk folder in Hotmail because you are setting the page body background color. Try using a page wide table to set the body background color.
Another possibility may be the fact that you are setting to many recipients for the same message. Try sending separate messages for each recipient.
![]() Thanks for the reply!
The SetHeader("to", email) works great, thanks! But for the hotmail junk folder, it's still not working. I'm now sending the email individually, and I removed the bgcolor in the body. Also tried removing the link and nothing seems to work. My junk folder is set to highest tho, but i'm sure it can work! Here's my newest code : -- $recipients = ''; // Email to send to if ($_POST['email1'] != '') { $recipients[] = $_POST['email1']; } if ($_POST['email2'] != '') { $recipients[] = $_POST['email2']; } if ($_POST['email3'] != '') { $recipients[] = $_POST['email3']; } if ($_POST['email4'] != '') { $recipients[] = $_POST['email4']; } if ($_POST['email5'] != '') { $recipients[] = $_POST['email5']; } // Message $html_message = '<html> <body> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td align="center" bgcolor="#FFFFFF"><img src="http://www.equita.qc.ca/riz/images/oxfam_email.jpg" width="600" height="400" border="0" alt=""></td> </tr> </table> </body> </html>'; $from_address = 'info@commerceequitable.com'; $from_name = 'Équita'; $reply_name = $from_name; $reply_address = $from_address; $reply_address = $from_address; $error_delivery_name = $from_name; $error_delivery_address = $from_address; // Send individual email to each recipients for ($i = 0; $i < count($recipients); $i++) { $subject = "Une invitation spéciale d'Équita"; $email_message = new email_message_class; $email_message->SetHeader("To", $recipients[$i]); $email_message->SetEncodedEmailHeader("From",$from_address,$from_name); $email_message->SetEncodedEmailHeader("Reply-To",$reply_address,$reply_name); $email_message->SetHeader("Sender",$from_address); if(defined("PHP_OS") && strcmp(substr(PHP_OS,0,3),"WIN")) { $email_message->SetHeader("Return-Path",$error_delivery_address); } $email_message->SetEncodedHeader("Subject",$subject); $email_message->CreateQuotedPrintableHTMLPart($html_message,"",$html_part); $text_message="Le riz équitable arrive au Québec !\n\nLe 16 octobre prochain, entre 11h et 15h, venez célébrer le lancement de notre nouveau riz équitable à la Place centrale du Marché Jean-Talon. Joignez-vous à nous pour des dégustations uniques préparées par Josée di Stasio et plusieurs chefs réputés de Montréal.\n\nPour visionnez le clip promotionnel, veuillez visiter le http://www.equita.qc.ca/riz/"; $email_message->CreateQuotedPrintableTextPart($email_message->WrapText($text_message),"",$text_part); $alternative_parts=array( $text_part, $html_part ); $email_message->AddAlternativeMultipart($alternative_parts); $error=$email_message->Send(); if (strcmp($error,"")) { echo "Error: $error\n"; } else { echo "Message sent\n"; } }
![]() It seems that Hotmail does not like your HTML. It seems that it may be for not having any real text or using a large remote image.
Anyway, I replaced your HTML by this one that is almost what is used in the test_html_mail_message.php example and it was well accepted. $html_message="<html> <head> <title>Une invitation spéciale d'Équita</title> <style type=\"text/css\"><!-- body { color: black ; font-family: arial, helvetica, sans-serif ; background-color: #A3C5CC } A:link, A:visited, A:active { text-decoration: underline } --></style> </head> <body> <table bgcolor=\"#A3C5CC\" width=\"100%\"> <tr> <td> <center><h1>Une invitation spéciale d'Équita</h1></center> <hr> <P>Hello Manuel,<br><br> This message is just to let you know that the <a href=\"http://www.phpclasses.org/mimemessage\">MIME E-mail message composing and sending PHP class</a> is working as expected.<br><br> Thank you,<br> Manuel Lemos</p> </td> </tr> </table> </body> </html>"; I suggest that you go on error and trial to add and remove HTML bits until you figure what is the problem. Just let me know what you find out.
![]() Thank you, adding text did the trick!
Really appreciate your support Take care Guillaume |
info at phpclasses dot org
.