Probleme d'envoi de mail html

Résolu
cs_fanfouer Messages postés 209 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 27 janvier 2008 - 23 oct. 2005 à 12:42
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006 - 23 oct. 2005 à 19:35
Bonjour,
Je travaille sur un script qui m'envoie un mail tous les jours a minuit pour me transmettre un listing sur la journée qui vien de s'écouler.
Le probleme c'est que je veu que le mail soit en html (pour qu'il ai la meme aparance que mon site) mais il n'aparait pas en htmlet reste sous le format texte standart.

Comment faire pour qu'il aparaisse comme je le soushaite?

Mon code :
<?
mysql_connect ("localhost", "xxxxxxxxxx", "xxxxxxxxxxxxxxxxx"); //connexion a MySQL
mysql_select_db("xxxxxxxxxxxxxxxx"); // Sélection de la base xxxxxxx
//la base "xxxx" est connecté, on peut travailler dessus
verifUser ("administrateur", "administrateur");
//déclaration fonction
//requete SQL type pour afficher des donnees dans les colonnes
function sql_query ($FAI){
if($FAI!=""){
$reponse = mysql_query("SELECT * FROM dslam_none WHERE FAI='$FAI'");
}
return $reponse;
}
function affichageListeDSLAMnone ($reponse){
while ($elementListe = mysql_fetch_array($reponse)){
echo'<tr class='.listeDSLAM_bgColor($i, $elementListe['etat']).'>
<td class="tableau3">
[mailto:mail_admin@monsite.com mail_admin@monsite.com]>";


/* sujet */
$subject = "Récapitulatif des DSLAM non joignables";


/* message */
$message= '
<HTML>
<HEAD>
<TITLE>France Télécom - liste des DSLAM non joignables</TITLE>
<META HTTP-EQUIV=
"Content-Type" CONTENT="text/html; charset=iso-8859-1">
<link href="maquette.css" rel="stylesheet" type="text/css">
</HEAD>

Liste des DSLAM totalement ou partiellement non joignable ce jour :

http://monsite.com/images/ct_mr.jpg" width="14" height="34"></td>
</tr>
<tr>
<td background="http://monsite.com/images/ct_bbg.JPG" width="1" height="10"></td>
<td background="http://monsite.com/images/ct_mr.jpg" width="14" height="34"></td>
</tr>
<tr>
<td background="http://monsite.com/images/ct_bbg.JPG" width="1" height="10"></td>
<td background="http://monsite.com/images/ct_mr.jpg" width="14" height="34"></td>
</tr>
<tr>
<td background="http://monsite.com/images/ct_bbg.JPG" width="1" height="10"></td>
<td background="</td'>http://monsite.com/images/ct_br.jpg"></td>
</tr>
</table>

</html>
';
/* Pour envoyer un mail au format HTML, vous pouvez configurer le type Content-type. */
$headers = "Content-Type: text/html; charset="iso-8859-1"\n";
$headers .= "Content-Transfer-Encoding: quoted-printable\n";
$headers .= "Content-Disposition: inline \n\n";

/* et hop, à la poste */
mail($to, $subject, $message, $headers);
//on vide la table l'envoi terminé
mysql_query("TRUNCATE dslam_none");
?>

Voila, en espérant que cela vous inspire

3 réponses

monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
23 oct. 2005 à 14:12
$headers  = 'Content-Type: text/html; charset=iso-8859-1'."\r\n";


// Je ne connais pas les deux ent&#234;tes qui suivent, mais en tout cas il faut respecter les \r\n en fin de ligne

$headers .= 'Content-Transfer-Encoding: quoted-printable'."\r\n";

$headers .= 'Content-Disposition: inline'."\r\n";



Visiblement ce sont tes headers qui ont une

mauvaise syntaxe. La moindre erreur et ton client mail ne pourra pas
les interpréter.

Et je te conseil de rajouter :


$headers .= 'From: toi <tonmail@domain.com>'."\r\n";




3
cs_fanfouer Messages postés 209 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 27 janvier 2008
23 oct. 2005 à 18:54
Effectivement, les headers n'étaient pas bon...
je les aient donc remplacés par ca :
//headers
$from = "MIME-version: 1.0\n";
$from .= "Content-type: text/html; charset= iso-8859-1\n";


//le tout a la poste
mail($to, $subject, $corps,$from);

Merci pour ton aide
3
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
23 oct. 2005 à 19:35
hmmm ok!
0