mail(), contenu qui passe en pièce jointe
Posté : 15 févr. 2007, 18:13
Bonjour,
Il semblerait que la fonction mail() que j'utilise pose problème. En effet, sur certains clients mail, le contenu est passé en pièce jointe, au lieu d'être écrit dans le corps du message.
Voici le script :
Quelqu'un saurait'il pourquoi ce bug ce produit ?
Il semblerait que la fonction mail() que j'utilise pose problème. En effet, sur certains clients mail, le contenu est passé en pièce jointe, au lieu d'être écrit dans le corps du message.
Voici le script :
// Envoi du mail d'activation
$from = "no-reply@[...].com";
$to = $_POST['mail'];
//$to = '[email protected]';
$sujet = "[...] account activation";
//Message :
if(isset($_COOKIE['lang']) && $_COOKIE['lang'] == 'en')
{
$message = "Hello ".$_POST['login'].",<br /><br />";
$message .= "Thank you for your registration to [...].<br /><br />";
$message .= "To activate your account, please click on the link below :<br /><br />";
$message .= "<a href=\"http://www.[...].fr/activate.php?account=".$_POST['login']."&key=".md5($_POST['login'])."\" target=\"_self\">";
$message .= "http://www.[...].fr/activate.php?account=".$_POST['login']."&key=".md5($_POST['login'])."</a><br /><br />";
$message .= "Greetings,<br />";
$message .= "[...] Staff";
}
else
{
$message = "Bonjour ".$_POST['login'].",<br /><br />";
$message .= "Merci de vous être enregistré sur [...].<br /><br />";
$message .= "Pour activer votre compte, cliquez sur le lien suivant :<br /><br />";
$message .= "<a href=\"http://www.[...].fr/activate.php?account=".$_POST['login']."&key=".md5($_POST['login'])."\" target=\"_self\">";
$message .= "http://www.[...].fr/activate.php?account=".$_POST['login']."&key=".md5($_POST['login'])."</a><br /><br />";
$message .= "Cordialement,<br />";
$message .= "Le staff [...]";
}
// Envoi du mail
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: $from\r\n";
if(!mail($to, $sujet, $message, $entete))
echo '<font class=\'error\'>'.$lang_mail_error.'</font>';
else
echo $lang_registered.'<br /><br />';
Les [...] remplacent le nom du projet sur lequel je travaille, et sur lequel je ne suis pas sensé communiquer.Quelqu'un saurait'il pourquoi ce bug ce produit ?