Fonction mail et skynet

cs_skit Messages postés 54 Date d'inscription vendredi 24 octobre 2003 Statut Membre Dernière intervention 23 septembre 2009 - 22 sept. 2009 à 22:49
ScyDark Messages postés 1 Date d'inscription mercredi 1 décembre 2010 Statut Membre Dernière intervention 1 décembre 2010 - 1 déc. 2010 à 15:14
Bonjour à tous. J'ai ici un problème très curieux avec skynet lors de l'envoi de mails fort curieux.
J'avais au début un code d'envoi de mail tout à fait normal qui faisait que, sous skynet, les personnes recevaient le code html brut.

Je me suis donc ingénié à faire comprendre aux providers d'adresse mail que c'était un mail en html. Skynet restait impassible. J'ai donc trouvé une solution en envoyant une version sans et une version avec html. Le problème c'est que skynet, bête comme chou, publie les deux et même les boundaries.
Bon dieu quelle saloperie! En attendant, de nombreux inscrits à ma newsletter ne savent pas la lire ou obtiennent quelque chose de très folklorique à lire.

Voici le code utilisé
function mail_LC($receveur_TO,$sujet_TO,$message_TO)
{
$mail =  $receveur_TO; // Déclaration de l'adresse de destination
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $mail)) // On filtre les serveurs qui bugs
{
$passage_ligne = "\r\n";
}
else
{
$passage_ligne = "\n";
}
//=====Déclaration des messages au format texte et au format HTML
$message_txt = html_entity_decode(strip_tags(str_replace("
","\n",$message_TO)));
$message_html = "<html><head></head> ".$message_TO." </html>";
// ==========
 
//=====Création de la boundary
$boundary = "-----=".md5(rand());
//==========
 
//=====Définition du sujet
$sujet = $sujet_TO;
//=========
 
//=====Création du header de l'e-mail
$header = "From: XXXX <xxx>".$passage_ligne;
$header.= "Reply-to: XXXX <xxx>".$passage_ligne;
$header.= "MIME-Version: 1.0".$passage_ligne;
$header.= "smtp: smtp.xxx.com".$passage_ligne;
$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary="$boundary"".$passage_ligne;
//==========
 
//=====Création du message
$message = $passage_ligne.$boundary.$passage_ligne;
//=====Ajout du message au format texte
$message.= "Content-Type: text/plain; charset=iso-8859-15".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_txt.$passage_ligne;
//==========
$message.= $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout du message au format HTML
$message.= "Content-Type: text/html; charset=iso-8859-15".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_html.$passage_ligne;
//==========
$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
//==========
 
//=====Envoi de l'e-mail
mail($mail,$sujet,$message,$header);
//==========
}


Si vous voyez là-dedans ce qui me permettrait de faire comprendre à skynet que je veux qu'il m'affiche du texte ou si vous savez comment faire en sorte que skynet affiche du html, vous me seriez vraiment secourables.

3 réponses

syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 20
23 sept. 2009 à 08:23
Tu as essayé avec un autre que Skynet ?? Des fois les paramètres des serveurs Mail sont impénétrables.. surtout pour celui qui n'y a pas accès.
S.
0
cs_skit Messages postés 54 Date d'inscription vendredi 24 octobre 2003 Statut Membre Dernière intervention 23 septembre 2009
23 sept. 2009 à 15:59
@skynet et @swing (qui sont du même groupe) sont les seuls avec qui je rencontre cette erreur. C'est d'autant plus frustrant que j'ai des amis qui reçoivent sur leur adresse skynet des mails en HTML.
0
ScyDark Messages postés 1 Date d'inscription mercredi 1 décembre 2010 Statut Membre Dernière intervention 1 décembre 2010
1 déc. 2010 à 15:14
Hello,

Je rencontre exactement le même problème et je suis en train de m'arracher les cheveux dessus. Les mails html arrivent bien sur Skynet mais sont lu comme texte brut. Il y a même une partie des headers fournis dans la fonction mail qui s'affichent en haut de mes mails :

Content-Type: text/html; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Mailer: PHP/5.2.3

Quelqu'un aurait-il une solution ?
0
Rejoignez-nous