Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/06/2008, 17h09   #1
Membre du Club
 
Inscription : décembre 2004
Messages : 134
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 134
Points : 44
Points : 44
Par défaut [ajax][php] réinterprétation du code

Bonjour,

Je développe en ce moment une application en Ajax/php/mysql et j'utilise comme tout le monde l'objet XMLHttpRequest. C'est d'ailleurs lui que je soupçonne être à la source des mes problèmes...

Il se trouve que mon code html est réinterprété à l'intérieur des balises. Ex :
quand j'écris ceci
Code :
<INPUT type="checkbox" name ="nom">
il m'affiche cela :
Code :
<input name ="nom" type="checkbox">
(notez l'inversion de l'ordre d'affichage des paramètres et de l'absence de majuscule à "input").

En voici un exemple encore plus frappant :
Code :
<tr style="background-color: rgb(255, 255, 255);">
au lieu de :
Code :
<tr style="background-color: #ffffff;">
sans oublier que pour le cas des checkboxes la propriété value lorsque l'item est coché vaut "on" au lieu de "checked" ! c'est à n'y rien comprendre. Qui/quoi retraîte mon code ? je précise que ce problème n'existait pas quand je n'utilisais pas AJAX. Comment empêcher ce problème. Merci
backfire est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2008, 18h03   #2
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
Bonjour,
Citation:
Envoyé par backfire Voir le message
Qui/quoi retraîte mon code ? je précise que ce problème n'existait pas quand je n'utilisais pas AJAX.


Mouaip, a priori Ajax n'y est pour rien ....

Qu'utilises-tu comme éditeur ?

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2008, 19h54   #3
Membre du Club
 
Inscription : décembre 2004
Messages : 134
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 134
Points : 44
Points : 44
j'utilise Notepad++. J'ai bien analysé et le code est transformé que lors des appels Ajax. Apparemment c'est la methode "send()" qui tranforme le flux dans un flux normalisé. En effet, s'il reconnait une balise telle qu'input, si elle est écrite en majuscule avec ses paramètres dans un ordre quelconque, elle remet dans l'ordre (le sien) et enlève les majuscules (norme xhtml). Par contre si la balise n'est pas reconnue comme "<inpute" alors il ne l'a touche pas.
backfire est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2008, 09h08   #4
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
Citation:
Envoyé par backfire Voir le message
J'ai bien analysé et le code est transformé que lors des appels Ajax. Apparemment c'est la methode "send()" qui tranforme le flux dans un flux normalisé.
Ben oui, mais le send() ne fait qu'envoyer des paramètres (idem ceux d'une url), et non des balises ...
Quant à la réponse, il s'agit de texte généré par ta page PHP : c'est toi qui contrôle le format de la réponse.

Aussi, je ne comprends pas entre quoi et quoi (ou entre quand et quand) tu trouves cette différence dans tes balises, et à quel endroit ?

Je n'ai personnellement jamais constaté ce que tu décris

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2008, 19h39   #5
Membre du Club
 
Inscription : décembre 2004
Messages : 134
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 134
Points : 44
Points : 44
Eh bien c'est simple quand je lance ma page principale (index.php), celle-ci génère tous mes DIV qui serviront de cibles futures à mes appels Ajax. Tout le code, à ce moment là reste intacte, tel que je l'ai écris dans le code.
C'est ensuite que lorsqu'un DIV nourrit par de l'Ajax (donc un appel asynchrone et sans rechargement de la page) que le code est transformé, normalisé par la méthode send(). Teste tu verras. Ecris tes balises en majuscule par exemple.
Au final ça n'est pas gênant, c'est juste que quand on ne le sait pas, on l'impression qu'un fantôme retraite le code...
backfire est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h46.


 
 
 
 
Partenaires

Hébergement Web