Ajax/prototype.js, charset et IE
10 messages
• Page 1 sur 1
- Robinson
- WRInaute passionné

- Messages: 2231
- Inscription: 25 Oct 2005
Ajax/prototype.js, charset et IE
Bonjour,
Je vous expose mon problème en simplifié.
Deux pages php enregistrées en Occidental (ISO Latin 1).
La première est composée des éléments suivants
Avec évidement inclusion du fichier prototype.js et du javascript de la fonction rafraichirpage2().
Lors du chargement de la page, aucun problème de caractères. Mais lorsque la page2 est rafraîchie, les caractères apparaissent différemment selon les navigateurs (?, carré...)
J'ai trouvé une solution à ce problème !
Ajouter en haut de la page2 :
Cela fonctionne parfaitement sous Firefox, Safari..etc mais évidement cela ne fonctionne pas du tout sur IE !
Cela n'affiche même pas les mauvais caractères car la page2 ne se charge pas du tout.
IE indique des erreurs sur la page...
Après quelques tests, j'ai remarqué que si la page2 n'affichait aucun texte, il n'y avait aucune erreur. Un simple "Bonjour" après le header('...') de la page2 et hop erreur.
Avez-vous une idée du problème et une solution ? Merci.
Je vous expose mon problème en simplifié.
Deux pages php enregistrées en Occidental (ISO Latin 1).
La première est composée des éléments suivants
- Code: Tout sélectionner
<div id="page2"><? include("page2.php");</div>
<script type="text/javascript">rafraichirpage2()</script>
Avec évidement inclusion du fichier prototype.js et du javascript de la fonction rafraichirpage2().
Lors du chargement de la page, aucun problème de caractères. Mais lorsque la page2 est rafraîchie, les caractères apparaissent différemment selon les navigateurs (?, carré...)
J'ai trouvé une solution à ce problème !
Ajouter en haut de la page2 :
- Code: Tout sélectionner
header('Content-Type: text/html; charset=iso-8859-1');
Cela fonctionne parfaitement sous Firefox, Safari..etc mais évidement cela ne fonctionne pas du tout sur IE !
Cela n'affiche même pas les mauvais caractères car la page2 ne se charge pas du tout.
IE indique des erreurs sur la page...
Après quelques tests, j'ai remarqué que si la page2 n'affichait aucun texte, il n'y avait aucune erreur. Un simple "Bonjour" après le header('...') de la page2 et hop erreur.
Avez-vous une idée du problème et une solution ? Merci.
- Robinson
- WRInaute passionné

- Messages: 2231
- Inscription: 25 Oct 2005
Une page principale (avec balise meta iso-8859-1) composée de plusieurs "cadres" <div>.
Dans l'un d'eux, j'affiche/réactualise via Ajax un autre fichier php.
L'affichage par inclusion (include) ne pose aucun problème, quand c'est demandé via Ajax (soit par un événement ou périodiquement), le problème des caractères se pose.
Dans l'un d'eux, j'affiche/réactualise via Ajax un autre fichier php.
L'affichage par inclusion (include) ne pose aucun problème, quand c'est demandé via Ajax (soit par un événement ou périodiquement), le problème des caractères se pose.
-

julienr - WRInaute impliqué

- Messages: 911
- Inscription: 5 Aoû 2003
Re: Ajax/prototype.js, charset et IE
Robinson a écrit:Bonjour,
- Code: Tout sélectionner
header('Content-Type: text/html; charset=iso-8859-1');
slt,
Tente de spécifier ceci plutôt :
- Code: Tout sélectionner
header( 'Content-Type: text/xml; charset=ISO-8859-1' );
a+
-

julienr - WRInaute impliqué

- Messages: 911
- Inscription: 5 Aoû 2003
nan ok c juste qu'un jour je comprenais pourquoi sous ie uniquement le retour de responseXML.documentElement plantait à cause de l'absence du content type text/xml dans la page
nan là toi vu que tu utilises prototype, va débuggé la réponse...
j'imagine que les msg d'erreur d'ie sont incompréhensible comme d'hab?
nan là toi vu que tu utilises prototype, va débuggé la réponse...
j'imagine que les msg d'erreur d'ie sont incompréhensible comme d'hab?
- Robinson
- WRInaute passionné

- Messages: 2231
- Inscription: 25 Oct 2005
Bon en fait non tu avais raison ^^
Il fallait bel et bien remplacer html par xml.
Merci beaucoup.
pfiouuuu comment IE peut-il sortir une erreur aussi importante là-dessus, ça me trou le luc ^^
Et oui, les messages d'erreurs d'IE sont toujours aussi incompréhensibles... (ligne 1365, caractère 6...)
Il fallait bel et bien remplacer html par xml.
Merci beaucoup.
pfiouuuu comment IE peut-il sortir une erreur aussi importante là-dessus, ça me trou le luc ^^
Et oui, les messages d'erreurs d'IE sont toujours aussi incompréhensibles... (ligne 1365, caractère 6...)
- Robinson
- WRInaute passionné

- Messages: 2231
- Inscription: 25 Oct 2005
Mouais mais il pourrait éviter de tout casser et de stopper le reste de la page.
Car le moindre petit javascript sur la page 1 ne marchait plus, même situé avant l'erreur.
Super pratique pour trouver d'où vient le problème qui n'était détecté par aucun outil et par aucun autre navigateur plus respectueux des normes...
Enfin bref, IE est toujours là pour faire chier les développeurs ^^
Car le moindre petit javascript sur la page 1 ne marchait plus, même situé avant l'erreur.
Super pratique pour trouver d'où vient le problème qui n'était détecté par aucun outil et par aucun autre navigateur plus respectueux des normes...
Enfin bref, IE est toujours là pour faire chier les développeurs ^^
10 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- [Ajax] probleme de charset
- différence entre charset=ks_c_5601-1987 et charset=euc-kr
- charset=iso-8859-1 ou charset=utf-8 ?
- Problème Framework Prototype
- Prototype petit soucis
- Conflit entre jquery et prototype
- Problème javascript Prototype et Scriptaculous
- Prototype de site : Optimiser AdSense
- [Prototype] Petit soucis avec disable();
- [ Javascript ] : prototype pour checked un bouton radio
Consultez la description détaillée des produits ou services de Google suivants : Google Web Toolkit
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

