pb d'accents envoie de mail via fonction php mail

Résolu
fredericmaill Messages postés 144 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 22 mars 2006 - 7 mars 2006 à 12:04
 justin - 6 nov. 2013 à 02:49
Bonjour,

j'envoie des mail grâce a la fonction mail de php, les email son bien envoyé de ce coté la pas de pb, par contre j'ai un pb du coté des accents, sur un web mail , type Yahoo mail ou Gmail pas de problème les accents du message de mon mail son bien pressent par contre sur un logiciel de type Outlook ça passe pas du tout il ne reconnais aucun caractère accentué !!

j'ai essayé plusieurs méthodes pour pallier a ce pb :

dans le header de mon mail j'ai mis:

Content-Type: text/plain; charset=ISO-8859-1

Content-Transfer-Encoding: quoted-printable.


Ex, en charset ISO-8859-1 :

é => =E9

à => =E0

ê => =EA


J’ai essayé également de mettre un ’ charset =UTF-8’ dans mon header ! Mais rien ne va !


Je vous remercie par avance de votre aide


Frédéric

vive PHP!!!, vive la prog !!!

3 réponses

fredericmaill Messages postés 144 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 22 mars 2006
7 mars 2006 à 15:57
j'ai treouvé la solution, Merci

$objet = "Informations sur votre compte UTILISATEURS";
$message = " message cotenant des accent : é è à .."

// ce qui permet de gerer l'affichage des accents
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

mail($objet,$message,$headers);

vive PHP !!!, vive la prog !!!
3
cs_AshenShugar Messages postés 202 Date d'inscription jeudi 24 juin 2004 Statut Membre Dernière intervention 22 janvier 2009 1
7 mars 2006 à 12:29
Je vais peut-être dire une connerie mais ne se pourrait-il pas que celà vienne de ta configuration de Outlook ? Tu as essayé de remplacer tes caractères accentués par des codes HTML tels que é ou É etc... ?

Le hardware, c'est sur quoi l'on tape lorsque le software merde...
0
Pour vraiment regler ce probleme en php, on fais ce qui suit:

Si par exemple, votre message c'est:

<?php

echo "Bonjour, j'ai été en vacance..";

?>

et que les accents ne fonctionne pas meme si vous rajouter UTF-8 dans le <head>.

Alors, vous rajouter votre phrase dans une variable et par la suite on la modifie. Tel qui suit.

<?php
$message = "Bonjour, j'ai été en vacance..";
$message = mb_convert_encoding($message,'HTML-ENTITIES','utf-8');

echo $message;
?>

ET VOILA!! :-)
0
Rejoignez-nous