|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||||||||
|
Membre confirmé
![]() ![]() Clément Développeur informatique Inscription : décembre 2006 Messages : 213 ![]() |
Bonjour
Je souhaiterais savoir s'il est possible d'écrire des liens de type mailto avec des accents à l'intérieur du corps du message. J'ai essayé diverses possibilités : Directement l'accent sur ma page, encodée en UTF-8: Code :
Code :
Code :
Code :
Je me demande même si cela est possible, au vu de la rfc 2368. Citation:
Quelqu'un pourrait-il m'éclairer sur la question ? |
|||||||||
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 045 ![]() |
Pas loin
Normalement c'est %C3%A9, chaque octet de l'utf-8 échappé. Mais ça dépend aussi de certains paramètres que je n'ai jamais bien pu comprendre. Essaie si ça te règle ton problème avec la plupart des combinaisons navigateur + programme mail. Si non, bah désolé |
|
|
10
|
|
|
#3 |
|
Membre confirmé
![]() ![]() Clément Développeur informatique Inscription : décembre 2006 Messages : 213 ![]() |
Merci de ta réponse thelvin !
En fait, j'avais essayé avec "%C3%A9" , mais j'avais simplement mal recopié sur mon post... Ca fonctionne sur mon ordi par exemple, mais pas sur celui de mon voisin... |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() ![]() Clément Développeur informatique Inscription : décembre 2006 Messages : 213 ![]() |
En réponse à moi-même, ca éclaircira peut être certains points, et cela sera peut être utile à d'autres :
Dans Outlook, il existe une option qui permet de faire varier le comportement du protocole mailto : Sous Outlook 2007 outils->option->Format du courrier->options internationales-> cocher "Activer la prise en charge de l'UTF-8 pour le protocole mailto:" Sous Outlook 2010 fichier->options->options avancées->options internationales: cocher "Activer la prise en charge de UTF-8 pour le protocole mailto:" Par défaut, lorsque l'option n'est pas cochée, mon outlook utilise l'encodage iso 8859-1 (ou latin-1, l'encodage par défaut français). Probablement que cela change en fonction de certaines variables locales... Donc dans ce cas, un %E9 est bien interprété en "é" dans le body. Lorsque l'option est cochée, le %E9 n'affiche aucun caractère dans mon body. En revanche un %C3%A9, qui correspond aux deux octets qui encodent le caractère "é" (E9) en UTF-8, affiche bien le "é". Remarque supplémentaire : dans la barre d'adresse du navigateur, si vous tapez : avec l'option décochée de Outlook, cela peut vous réserver des surprises. Sur Firefox, le "é" est affiché "é" dans le message. Comme si le "é" avait été encodé au passage en UTF-8. Sur IE8, le "é" est affiché correctement dans le message, car laissé au format ISO. Moralité : Il ne me semble pas possible d'écrire des accents dans le body, que l'on saura correctement interprétés par tous les clients de messagerie car:
Cela vous parait-il exact ? |
|
|
00
|
|
|
#5 | |||
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 045 ![]() |
D'abord merci pour cette analyse que je n'ai jamais faite, parce qu'Outlook ça me broute, et que je ne l'ai pas de toute façon.
Citation:
Et il n'y a pas de mention contraire. Citation:
Ce que tu tapes dans la barre d'adresse n'a pas de format d'encodage, puisque c'est un truc tapé au clavier et affiché à l'écran. (Non, ce n'est pas important, en effet.) Citation:
(Enfin, mailto dit qu'il se base sur le format d'URL, et il en découle que c'est du UTF-8. Mais bon, pour ces vieux trucs, la logique URL donc UTF-8 est souvent oubliée.) Mais il y a d'autres trucs à tenter si on est acharné, comme ajouter &content-type=text%2Fplain;charset%3DUTF-8 (il paraît que ça changeait quelque chose à une lointaine époque.) Ou alors la notation =?UTF-8?Q?gagn=C3=A9e?= correctement échappé en URL puis en HTML. Il y en a sûrement d'autres. |
|||
|
|
00
|
|
|
#6 |
|
Membre confirmé
![]() ![]() Clément Développeur informatique Inscription : décembre 2006 Messages : 213 ![]() |
Merci encore pour ta réponse thelvin...
J'ai essayé ces petites astuces. Malheureusement, ça n'a pas été très concluant Code :
mailto:john@test.com?body=?UTF-8?Q?gagn=C3=A9e?= Code :
mailto:john@test.com?body=%3FUTF-8%3FQ%3Fgagn%3DC3%3DA9e%3F%3D Code :
mailto:john@test.com?body=gagn%C3%A9e&content-type=text%2Fplain;charset%3DUTF-8
Donc bon, je crois que je vais m'arrêter là, je ne pense pas trouver de solutions miracle. Et en cherchant sur le net, les avis vont généralement dans ce sens. Reste à savoir si je vais obliger le texte à ne pas comporter d'accents, ou si je vais laisser tomber le mailto au profit d'une gestion d'un envoi de mail côté serveur. En tout cas, tout cela reste assez instructif... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com