Envoi de mail avec mise en forme html et simple
Posté : 04 mars 2005, 15:49
Bonjour à tous !
Voilà, j'ai un petit blocage sur l'envoi de mail contenant une mise en forme html et une version simple du contenu.
Aprés divers test, je me trouve avec un petit souci que j'aimerais ne pas laisser de côté.
En gros, mon mail part, je le reçois et depuis mon petit logiciel (j'utilise Foxmail), il s'affiche la version simple, et quand je choisi de l'ouvrir en version html, pas de problème non plus, tout y est beau comme je le souhaité !
Mais voilà, mon souci est franchement bête, c'est que depuis une interface type hotmail, ça m'affiche page blanche... rarf !! ça devient frustrant là !!
Je vous colle ma fonction (reprise d'une fonction trouvé sur phpinfo.net), si vous voyez d'où ça peut venir, j'ai pas réussi à trouver moi même :
Voilà, j'ai un petit blocage sur l'envoi de mail contenant une mise en forme html et une version simple du contenu.
Aprés divers test, je me trouve avec un petit souci que j'aimerais ne pas laisser de côté.
En gros, mon mail part, je le reçois et depuis mon petit logiciel (j'utilise Foxmail), il s'affiche la version simple, et quand je choisi de l'ouvrir en version html, pas de problème non plus, tout y est beau comme je le souhaité !
Mais voilà, mon souci est franchement bête, c'est que depuis une interface type hotmail, ça m'affiche page blanche... rarf !! ça devient frustrant là !!
Je vous colle ma fonction (reprise d'une fonction trouvé sur phpinfo.net), si vous voyez d'où ça peut venir, j'ai pas réussi à trouver moi même :
function mailquilestbo($destinataire,$subject,$corps,$corpsAltern)
{
$from = "[email protected]";
$limite1 = md5 (uniqid (rand()));
//premier boundary
$limite2 = md5 (uniqid (rand()));
//second boundary
$entete = "Return-Path: <$from>\n";
$entete .= "Delivered-To: $destinataire\n";
$entete .= "Subject: $subject\n";
$entete .= "To: $destinataire\n";
$entete .= "Date: ".date("D, j M Y G:i:s +0200")."\n";
$entete .= "From: \"Bisounours Action Team\" <$from>\n";
$entete .= "X-Priority: 3\n";
$entete .= "X-Mailer: PHP\n";
$entete .= "MIME-Version: 1.0\n";
$entete .= "Content-Type: multipart/related;\n type=multipart/alternative\n boundary=\"b1_$limite1\"\n";
//les entêtes du mail
$body = "--b1_$limite1\n";
$body .= "Content-Type: multipart/alternative;\n boundary=\"b2_$limite2\"\n\n";
$body .= "--b2_$limite2\n";
$body .= "Content-Type: text/plain; charset = \"iso-8859-1\"\n";
$body .= "Content-Transfer-Encoding: quoted-printable\n\n\n";
$body .= $corpsAltern."\n\n";
$body .= "--b2_$limite2\n";
$body .= "Content-Type: text/html; charset = \"iso-8859-1\"\n";
$body .= "Content-Transfer-Encoding: quoted-printable\n\n\n";
$body .= "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"><HTML><HEAD>
<TITLE>Message du site de la Bisounours Action Team</TITLE>
</HEAD>
<BODY BGCOLOR=#660066 LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
<p> </p><table width=\"90%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
<tr><td><p><font color=\"#FF0000\" size=\"4\" face=\"Arial, Helvetica, sans-serif\"><strong><em>BISOUNOURS
<font color=\"#FFFF33\">ACTION</font> TEAM</em></strong></font></p>
<table width=\"90%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td bgcolor=\"#663366\"><font color=\"#FFFFCC\" size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>>
Message du site</strong></font></td>
</tr><tr>
<td bgcolor=\"#84267A\"><p> </p>";
$body .= $corps;
$body .= " <p> </p></td>
</tr><tr>
<td bgcolor=\"#663366\"><div align=\"right\"><font color=\"#FFFFCC\" size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>.:</strong></font></div></td>
</tr>
</table>
</td>
</tr>
</table><p> </p>
</BODY></HTML>\n\n\n";
$body .= "--b2_$limite2";
$body .= "--\n\n";
$body .= "--b1_$limite1";
$body .= "--\n\n";
$bool = mail($destinataire, $subject, $body, $entete);
return $bool;
}
En vous en remerciant par avance !