Code html s'affiche en brut dans mails envoyés sur gmail

WRInaute discret
Bonjour,

Je n'ai pas touché à mon script d'envoi d'e-mail depuis plusieurs mois et les ai toujours reçus correctement chaque jour. Tout à coup, hier, je vois que des e-mails contenant du html commencent à s'afficher en brut dans ma messagerie gmail, ce qui est très désagréable s'il se produit la même chose pour tous mes visiteurs... Pourtant, je n'ai absolument rien touché au code et les mails venants d'autres sites que les miens sont fonctionnels. Je me demande donc si gmail aurait changé quelque chose dans son algorithme (peut-être aurais-je fait une grossière erreur jusque-là qui aurait été acceptée mais qui ne l'est plus). Voici la source des e-mails :

Code:
Delivered-To: dsghgf@gmail.com
Received: by 16.243.29.136 with SMTP id u8csp211814tef;
        Thu, 26 Apr 2012 12:13:01 -0700 (PDT)
Received: by 16.243.29.136 with SMTP id bi7mr7996954wib.12.1335467580844;
        Thu, 26 Apr 2012 12:13:00 -0700 (PDT)
Return-Path: <www-data@example.com>
Received: from example.com (ns206179.ovh.net. [128.23.42.118])
        by mx.google.com with ESMTP id k8si5029929wed.24.2012.04.26.12.13.00;
        Thu, 26 Apr 2012 12:13:00 -0700 (PDT)
Received-SPF: pass (google.com: domain of www-data@example.com designates 128.23.42.118 as permitted sender) client-ip=128.23.42.118;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of www-data@example.com designates 128.23.42.118 as permitted sender) smtp.mail=www-data@example.com
Date: Thu, 26 Apr 2012 12:13:00 -0700 (PDT)
Message-Id: <4f999e3c.0844d80a.15cb.ffffb812SMTPIN_ADDED@mx.google.com>
Received: by example.com (Postfix, from userid 34)
	id E12D84EA008C; Thu, 26 Apr 2012 21:14:08 +0200 (CEST)
To: 7804j@dofus2.org
Subject: test
X-PHP-Originating-Script: 0:fonctions.php
From: "Dofus2.org"<contact@dofus2.org>

Reply-to: "Dofus2.org" <contact@dofus2.org>

MIME-Version: 1.0

Content-Type: multipart/alternative;

 boundary="-----=46d95364d4c61691ad38bf2544dfe092"
Message-Id: <20120426191408.E12D84EA008C@example.com>
Date: Thu, 26 Apr 2012 21:14:08 +0200 (CEST)



-----=46d95364d4c61691ad38bf2544dfe092

Content-Type: text/html; charset="UTF-8"

Content-Transfer-Encoding: 8bit



<a href="http://www.dofus2.org" title="Dofus2.org"><img src="http://www.dofus2.org/banniere.png" alt="Dofus2.org" title="Dofus2.org" /></a><br/><br/>Bonjour,<br/><br/><br />
				<br />
				Nous avons correctement reçu le message que tu nous a envoyé grâce au formulaire de contact de <a href="http://www.dofus2.org">Dofus2.org</a>.<br />
				Nous te répondrons à cette adresse e-mail sous 48 heures au maximum si une réponse est nécessaire.<br/><br/><br />
				<br />
				Merci de ta compréhension.<br/><br />
<br />
				<hr><br />
				L'équipe de <a href="http://www.dofus2.org">Dofus2.org</a>



-------=46d95364d4c61691ad38bf2544dfe092--



-------=46d95364d4c61691ad38bf2544dfe092--

Merci d'avance de vos idées :)
 
WRInaute accro
Et tu le génères de quelle façon ce mail ? Avec quelle classe PHP ? A la mano ? Es-tu sûr que la conf de ton hébergeur n'a pas changé en la matière ? Ou que tu n'as pas fait une mise à jour de ton CMS qui aurait reseté la conf ?
 
WRInaute discret
J'ai simplement utilisé la fonction mail() de PHP et je dispose d'un dédié chez OVH. Je l'ai donc configuré moi-même avec Postfix sur Debian et, par conséquent, il est possible que j'aie fait des fautes. Par contre, dans tous les cas, ces erreurs devraient pouvoir se voir dans la source de l'e-mail et la configuration n'aurait ainsi aucune importance : gmail les reçoit tels que j'ai inséré le code ci-dessus :/
 
WRInaute accro
J'évites en général d'avoir recours à la fonction mail, je préfère de loin utiliser des classes rodées pour ça, comme PHPMailer.Si tu gères ça à la mano, il suffit souvent d'un saut de ligne en trop (ou en moins) dans une en-tête pour foutre le Bronx.

Tu as testé avec d'autres webmail ? Type Yahoo / Hotmail ?
 
WRInaute discret
J'ai effectivement résolu le problème, mais je ne me rappelle plus des détails.

Je sais que j'ai simplement enlevé les frontières du type -------=46d95364d4c61691ad38bf2544dfe092--, puis que j'ai laissé uniquement le html en enlevant le texte simple, et désormais tout fonctionne.
 
Discussions similaires
Haut