Pb de charset incompréhensible ...

markouch

Membre confirmé
12 Mars 2005
27
0
80
Paris
moulliac.fr
Bonjour, je suis en train de mettre en place un formulaire sur un site, formulaire chargé de prendre des infos assez nombreuses, et devant envoyer ensuite un résumé des réponses par mail (fonction mail()).

Le tout en php. Or, quel que soit l'encodage utilisé (utf-8 ou iso-8559-1), le mail reçu par Mail sur ma machine n'arrive pas à afficher les caractères accentués comme il faut. Voilà des mois que je cherche à comprendre, mais en vain. Et le pb est que je suis incapable de savoir si les récipiendaires sur windows reçoivent comme il le faut !! ...

Je précise que je fais mes essais en local (apache2, mysql, php) et que le résultat ne change pas, quel que soit l'encodage que je mets sur le site web sur lequel je travaille.

Quelqu'un aurait-il eu le même problème ? Je suis en mac os 10.4.9 et Mail 2.1. Merci d'avance pour une solution.

Marc
 
Si tu veux envoyer un message sans problème il faut spécifier l'encodage au départ de sorte que tout le monde soit au courant.
Si tu regardes les entêtes des messages que tu reçois, tu peux trouver des lignes telles que :
Bloc de code:
Mime-version: 1.0
Content-type: text/plain; charset="ISO-8859-1"
Ensuite, chaque caractère autre que ASCII (>= 128) doit être transcodé à moins d'ajouter (comme le fait GMail) :
Bloc de code:
Content-Transfer-Encoding: 8bit
Lorsque j'envoie un message avec Mail, on trouve plutôt cette ligne :
Bloc de code:
Content-Transfer-Encoding: quoted-printable
et, par exemple, un "e accentué" est codé : =E9 (en HTML : é )