Pb envoi mail au format HTML [Résolu]

Signaler
Messages postés
54
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
20 décembre 2005
-
Messages postés
54
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
20 décembre 2005
-
Bonjour,


Je cherche via un script à envoyer un mail en HTML, mais impossible à faire fonctionner et je ne vois pas pourquoi. Voici le code :

function envoi_mail($mail, $fichier)
{
$sujet='Dernières infos';
$header='From: xx <[mailto:contact@xx.fr>\n' contact@xx.fr>\n'];
$header.='Reply-To: <[mailto:contact@xx.fr>\r\n' contact@xx.fr>\r\n'];
$header.= "MIME-Version: 1.0\r\n";
$header.= "content-type: text/html; charset=iso-8859-1\r\n";
$textfile = $fichier;
if($fhandle = fopen($textfile, "r"))
{
$message = fread($fhandle,filesize($textfile));
fclose($fhandle); //CLOSE THE FILE


return mail($mail, $sujet, $message, $header);
}
else
{
print("Error: the txt file could not be opened or read.");
return false;
}
}

Merci de votre aide

5 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



'Content-Type: text/plain; charset="iso-8859-1"'."\n"

'Content-Transfer-Encoding: quoted-printable'."\n\n"

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Si non tu as :

<?php

$texte = 'le texte de votre page :) :P ;)';//ici, mettez le texte de votre page entre les ''

echo $texte,"
\r\n";



$smileys = array(':)',':P',';)',':(',':@',':D',':peur:','mdr');

$img = array('smile.gif','razz.gif','wink.gif','snif.gif','evil.gif','thumleft.gif','affraid.gif','mdr.png');

$nb_smileys = 0;

foreach($smileys as $element){$nb_smileys++;}

for($i=0;$i<$nb_smileys;$i++){

$texte = str_replace($smileys[$i],'',$texte);

}

echo $texte,"
\r\n";//ici,on fait l'affichage du texte apres avoir changé les codes en smileys

?>

@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
OUPS

Je me suis planté de forum !!!

dsl!!!!

Non enfaite ici ce qui plante tout je crois que c'est

$header.= "MIME-Version: 1.0\r\n";

Moi aussi ça me le faisais sur un autre script et quand j'ai enlevé ça, c'était mieux!!!

@+ et encore dsl


Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
Messages postés
54
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
20 décembre 2005

Effectivement en enlevant $header.= "MIME-Version: 1.0\r\n";
le mail part, mais affiche chez le destinataire le code HTML et non pas une page correcte.
Messages postés
54
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
20 décembre 2005

Merci de votre aide, le code qui fonctionne est

$header='From: xx <[mailto:contact@xx.fr>'."\n contact@xx.fr>'."\n]";
$header.='Reply-To: <[mailto:contact@xx.fr>'."\r\n contact@xx.fr>'."\r\n]";
$header.= 'content-type: text/html; charset=iso-8859-1'."\r\n";