|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2005 Messages : 8 ![]() |
Bonjour,
Je souhaite définir une fonction AJAX qui a pour but d'ajouter à ma page HTML un div avec un formulaire prérempli lors d'un click utilisateur. J'utilise PHP et smarty comme moteur de template pour mes pages. Tout fonctionne très bien si ce n'est l'encoding de mon div ajax qui n'est pas le même que celui de ma page. Je suis en ISO-8859-1 (*) pour les pages mais je pense que je dois encoder en UTF8 les div HttpRequest (vu les caractères bizarres que j'obtient). Y a t'il un moyen propre de définir/changer l'encoding de ce que génèrer la fonction display de smarty ? (*) : je suis sur un vieux projet et je ne peux pas changer !!! |
|
|
00
|
|
|
#2 |
![]() ![]() |
A mon avis le problème vient du code du formulaire, il faut s'assurer que les caractères spéciaux soient bien encodés...
Sinon il suffit de changer ton tpl correspondant à l'en-tête et de mettre UTF-8
__________________
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_- Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester. Pensez également à cocher ![]() Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça. Dimension Internet - Carnet Web Imprimerie Nice |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : juillet 2005 Messages : 8 ![]() |
Non, si je déclare ma page avec
Code :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> J'ai fais le test suivant, en PHP dans mon appel httpRequest, je fait Code :
|
||
|
|
00
|
|
|
#4 | ||
|
Invité de passage
![]() Inscription : juillet 2005 Messages : 8 ![]() |
Bon je crois que j'ai compris d'où provient mon souci :
Les réponses aux requêtes HTTP (via httpRequest ici) se font visiblement avec un charset définit par défaut à UTF8 dans l'entête. L'entête utilisé par le navigateur pour décoder les caractères de mon <div> n'est donc plus celui définit dans ma page HTML de base et dans mes pages PHP : ISO-8859-1 J'ai trouvé et essayé cette fonction : Code :
xmlHttp.overrideMimeType("text/html; charset=ISO-8859-1"); Cela fonctionnne très bien sur firefox mais pas sur IE Voici mon code Ajax au complet : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com