j'ai revue mon system d'envoi de mail qui fonctionnait tres bien en mail html uniquement, afin d'y integrer quand même le choix entre html et text/plain...
j'ai essayé en faisant ainsi:
// mise en forme du sujet de l'email
$sujet_court = 'Test de votre adresse email';
$boundary = md5(uniqid(microtime(), TRUE));
// mise en variable de l'entête du mail de test
$headers = "From: noreply@".$domaine."\n";
$headers .= "To: ".$email."\n";
$headers .= "Subject: ".$sujet_court."\n";
$headers .= "Organization: http://".$_SERVER['HTTP_HOST']."\n";
$headers .= "Date: ".date('r')."\n";
$headers .= "X-priority: 1\n";
$headers .= "X-Mailer: PHP/".phpversion()."\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= 'Content-Type: multipart/mixed; charset=\"iso-8859-15\"; boundary='.$boundary."\n";
// mise en forme de l'email au format texte
$email_contenu = "Test de réception des emails du site ".$_SERVER['HTTP_HOST']."\n";
$email_contenu .= "Test réussi avec succès\n";
$email_contenu .= "Vous pouvez poursuivre la procédure d’inscription sur le site\n";
$email_contenu .= "Ps. l’adresse email d’expedition de ce message n’est pas valide et ne peut en aucun cas servir d’adresse de reponse.\n";
// mise en forme de l'email au format html
$email_contenu .= '--'.$boundary."\n";
$email_contenu .= "Content-Type: text/html; charset=\"iso-8859-15\"\n";
include("includes/email_proformat.php");
$email_contenu .= $email_head."\n";
$email_contenu .= " <p class=\"titre\"><b>Test</b> de réception des emails du site ".$_SERVER['HTTP_HOST']."</p>\n";
$email_contenu .= " <p class=\"sous_titre\">Test réussi avec succès</p>\n";
$email_contenu .= " <p class=\"center\">Vous pouvez poursuivre la procédure d’inscription sur le site</p>\n";
$email_contenu .= " <p class=\"small\"><br />Ps. l’adresse email d’expedition de ce message n’est pas valide et ne peut en aucun cas servir d’adresse de reponse.</p>\n";
$email_contenu .= $email_foot."\n";
// fin de l'email
$email_contenu .= '--'.$boundary."\n";
// envoie du mail de test
$send_email = @mail($email, $sujet_court, $email_contenu, $headers);
je souhaite faire en sorte que cette email propose par preference la version html et si celle-ci n'est pas utilisable, la version texte. sur les clients mail (soft), le mail est bien en html, mais chez les different webmail (google,yahoo,orange) j'ai des problemes... mon email est chez google la version html mais sans les images, chez orange j'ai les deux partie d'afficher mais comme le code source de l'email sans les headers...quelqu'un peut il me dire comment faire pour avoir la version texte quand le html ne passe pas, et la version html quand possible, et ce pour tout type de client mail et webmail?