JQuery et iso8859-1

WRInaute passionné
Bonjour,

je me suis mis à jquery et j'ai un souci d'encodage

tout mon site + BD est en iso8859-1 alors que jquery par défaut est en utf8

En gros, lorsque je clique sur un bouton "modifier" un formulaire s'ouvre et remplit les champs avec la BD (en cliquant, la fonction $ va lancer un script en iso8859-1 aussi et me retourner les valeurs des champs, et dans mon success, je remplis le formulaire avec les champs reçus)
Le souci est que les champs reçu par jquery sont automatiquement transformés en utf8, et pas de utf8_decode en js (celle ci ne marche pas bien)

j'ai aussi essayé avec :
Code:
$.ajaxSetup ({
		'beforeSend' : function(xhr) {
		xhr.overrideMimeType('text/html; charset=iso-8859-1');
		}
	});
mais c'est pas compatible IE :evil: comme dab'

donc si quelqu'un a une solution, merci d'avance
 
WRInaute accro
je vois pas trop de solution, a moins de reformater tes entrées en UTF-8 je pense que tu es dans une impasse
 
WRInaute accro
si tu veux pas reformater tes entrées rapidos, en sortie tu dois pouvoir passer tes datas sql dans un tableau php, les encoder UTF-8, et avec l'envoie d'un charset Utf-8 ca devrait fonctionner. mais je sais pas comment est fais ton code, je suppose que tu as du deja essayer cette solution
 
WRInaute passionné
KOogar a dit:
avec l'envoie d'un charset Utf-8 ca devrait fonctionner

tu fais alluasion à ça :
Code:
    $.ajaxSetup ({
          'beforeSend' : function(xhr) {
          xhr.overrideMimeType('text/html; charset=iso-8859-1');
          }
       });
???

c'est pas compatible IE !!!

ou alors tu pensais à autre chose ?
 
WRInaute accro
je pensais a ca :

Code:
<?php  $res =  mysql_query($ta_requete);
    while (($resultat = mysql_fetch_array($res, MYSQL_ASSOC)) !== false) {
        $tab[] = $resultat;
    }


header('Content-Type: text/html; charset=utf-8'); 

foreach( $tab as $itemtab ) {  ?>
<input type="text" value="<?php echo utf8_encode( $itemtab['champ'] ) ;?>" />
<?php  } ?>
 
WRInaute passionné
merci koogar mais

1- ce code est dans la page appelante ou la page appelée ? car apparemment le retour de jquery se fait toujours en utf8, donc le travail est surement à faire au niveau de la page appelante
2- moi je veux tout passer mes résultats en iso 8859 et non en utf-8
 
WRInaute accro
tu as pas le choix, tu dois gérer ta page en utf-8 puisque jquery est en utf-8 (car ISO est déprécier en javascript), donc:
- soit tu modifies le formatage de tes entrées que tu passes en utf-8
- soit tu arrives a réecoder en utf-8 tes sorties qui sont formater en ISO
avec ta page qui doit avoir un charset en utf-8
 
Discussions similaires
Haut