pb envoi mail HTML

Répondre
guns17
le 03/08/2005 à 13:52
guns17
Bonjour,
j'ai un souci avec l'envoi de mail en HTML.
je n'arrive pas à dissocier les infos d'entete.
voici mon code
<?php
$to = 'nom@domaine.com';
$sujet = 'Contact client';
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$tel = $_POST['tel'];
$mail = $_POST['mail'];
$adresse1 = $_POST['adresse1'];
$adresse2 = $_POST['adresse2'];
$cp = $_POST['cp'];
$ville = $_POST['ville'];
$pays = $_POST['pays'];
$suggestion = $_POST['suggestion'];

$message = "<h2><strong><u>Nouveau contact client</u></strong></h2>";
$message .= "<table>";
$message .= "<tr><td size=\"2\">Nom du contact : </td><td><strong>". $nom ." ".$prenom."</strong></td></tr>";
$message .= "<tr><td size=\"2\">adresse : </td><td><strong>". $adresse1 ."</strong></td></tr>";
$message .= "<tr><td size=\"2\"></td><td><strong>" . $adresse2 . "</strong></td></tr>";
$message .= "<tr><td size=\"2\"></td><td><strong>" . $cp . " " . $ville . "</strong></td></tr>";
$message .= "<tr><td size=\"2\">telephone : </td><td><strong>" . $tel . "</strong></td></tr>";
$message .= "<tr><td size=\"2\">mail : </td><td><strong>" . $mail . "</strong></td></tr>";
$message .= "<tr><td size=\"2\">Suggestions : </td><td><strong>" . $suggestion . "</strong></td></tr>";
if(isset($_POST['C1']))
{
if(isset($_POST['C2']))
{
$message .= "<tr><td></td><td><ul><li><strong>Le contact souhaite recevoir un catalogue et connaitre son point de vente le plus proche</li></ul></strong></td></tr>";
}
else
{
$message .= "<tr><td></td><td><ul><li><strong>Le contact souhaite recevoir un catalogue</li></ul></strong></td></tr>";
}
}
elseif(isset($_POST['C2']))
{
$message .= "<tr><td></td><td><ul><li><strong>Le contact desire connaitre son point de vente le plus proche</strong></li></ul></td></tr>";
}
$message .= "</table>";

$entete = 'MIME-Version: 1.0\r\n';
$entete .= 'Content-Type: text/html; charset=iso-8859-1\r\n';
$entete .= 'To: Contact <'.$to.'>\r\n';
$entete .= 'From: Contact site <'.$mail.'>\r\n';

echo('to : '.$to);
echo('');
echo('sujet : '.$sujet);
echo('');
echo('message : '.$message);
echo('');
echo('entete :'.$entete);
echo('');

$test = mail($to,$sujet,$message,$entete);
echo('test : '.$test);
?>


le mail est bien envoyé mais je le recois en texte, pas en HTML.
La chaine de caractère qui contient les entetes est la suivante :
MIME-Version: 1.0\r\nContent-Type: text/html; charset=iso-8859-1\r\nTo: Contact TEISSA \r\nFrom: Contact site TEISSA \r\n
apparemment \r\n ne séparent pas les champs, c'est pourquoi je ne le recois pas en HTML.
qq'un peut-il m'éclairer?
merci.
LA GLOBULE
le 03/08/2005 à 21:11
LA GLOBULE
Remplace ton :

<?php
$entete = 'MIME-Version: 1.0\r\n';
$entete .= 'Content-Type: text/html; charset=iso-8859-1\r\n';
$entete .= 'To: Contact <'.$to.'>\r\n';
$entete .= 'From: Contact site <'.$mail.'>\r\n';
?>


En :


<?php
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-Type: text/html; charset=iso-8859-1\r\n";
$entete .= "To: Contact <".$to.">\r\n";
$entete .= "From: Contact site <".$mail.">\r\n";
?>


Sans double quote, tes séparateurs ne sont pas interprétés...
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours