Bonjour, j'utilise pour mon site un formulaire de contact classique, je viens de m'apercevoir que dans outlook 2007, il y avait de gros problèmes de décodage, tous les "é" "à" etc. ne sont pas interpréter comme il faut, alors que dans gmail, Hotmail ou Thunderbird par ex.
Tout fonctionne correctement! Smiley eek

Comment pourrais-je améliorer mon formulaire pour que ça ne pose plus de problèmes dans outlook 2007?



d'avance merci
Bonjour,

Tu travailles en UTF-8 tout au long de la chaine? C'est-à-dire que ta page avec ton formulaire de contact est en UTF-8, et déclarée comme telle (balise META + en-tête HTTP), le script d'envoi de messages gère l'UTF-8, et enfin le mail envoyé contient une déclaration de l'encodage?

À tout hasard: les bases sont-elles connues?
Modifié par Florent V. (14 May 2009 - 16:01)
Il me semble que ce que je fais est correcte, car dans outlook07 je viens de découvrir l'option

"codage" quand je choisi "utf-8", mon mail s'affiche correctement...

Mais le problème c'est que moi je le sais, mais je doute que la majorité des gens qui utilisent ce programme soient au courant de ça...

merci pour tes liens et ta formation html&css qui est très bien réalisée Smiley biggrin
Hello,

Florent V. a écrit :
et enfin le mail envoyé contient une déclaration de l'encodage?
cf. la fonction mail.

Tu as bien une ligne du genre :
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
?
oui, j'ai bien une ligne du genre ^^ et quelques autres


  $headers  = 'MIME-Version: 1.0' . "\r\n";
            $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
            $headers .= 'From: info@monsite.be' . "\r\n";
                if ( mail($destinataire, $objet, $message, $headers) ) //on envoie l'e-mail
                {
 
                echo "Pour valider votre inscription, veuillez cliquer sur le lien dans l'e-mail que nous venons de vous envoyer.";
                }........
                else


j'ai testé avec et sans Content-type, ça ne change rien Smiley biggol je ne sais pas si ça vient de mon code ou tout simplement de ce programme...
En tous cas, pour les autres clients mail, il n'y a aucun problème...

bonne journéeEe
Bonjour

J'ai exactement le même problème que toi.

Après avoir passé des heures de test.
Il semblerait que ce soit Outlook2007 la cause... car dans d'autres client messagerie ex : yahoo et Outlook2002, les accents passent correctement.

Je n'ai pas trouvé de solution à ce jour et toi ?

Merci d'avance,
On peut voir la source d'un mail envoyé et qui passe mal? Je parle de la source complète, en-têtes et marqueurs de sections compris.
Perso j'ai réglé le problème en repartant à zéro et en abandonnant l' utf-8 au profit d'iso-8859-1 et depuis mes problèmes sont résolus.

Si ça peut-être utile voici la partie "envoie" de mon script

elseif(!empty($envoi))
            {
              $objet='[monsite] : '.$objet;
              $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Subject:'.$objet."\r\n".'Content-type:text/plain;charset=is-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');
              if(mail($destinataire,$objet,$message,$headers))
              {
                echo '<p style="color:red">Votre message a bien &eacute;t&eacute; envoy&eacute;. Merci.</p><p><a href="/">Retour &aacute; la page d\'accueil</a></p>';
                $Envoi='';
                
              }
Dans le code html tu avais bien une meta avec l'encodage, c'était bien une page complète avec le head, body, etc?
Hello,

Tu aurais pu passer par la fonction decode_utf8() c'est ce que j'utilise pour les formulaires flash et sous outlook 2007 je n'ai jamais eu de soucis.

Cependant je sais que certains clients de messagerie supporte mal la séparation des headers avec le \r\n pour ma part je ne mets que \n et ça passe sous outlook, thunderbird, hotmail et gmail.

Voilou