IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] [php] réinterprétation du code


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 134
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    <INPUT type="checkbox" name ="nom">
    il m'affiche cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <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 : Sélectionner tout - Visualiser dans une fenêtre à part
    <tr style="background-color: rgb(255, 255, 255);">
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <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

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    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 : 13 474
    Par défaut
    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+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 134
    Par défaut
    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.

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    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 : 13 474
    Par défaut
    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+

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 134
    Par défaut
    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...

Discussions similaires

  1. [AJAX] Insertion dans une BDD avec code Ajax/PHP
    Par cobra85 dans le forum jQuery
    Réponses: 5
    Dernier message: 17/10/2013, 20h35
  2. Le code postal met à jour la liste des villes (Ajax/PHP)
    Par LadyArwen dans le forum Général JavaScript
    Réponses: 24
    Dernier message: 10/06/2010, 00h57
  3. Intégrer du php dans un code HTML ...
    Par Le Parrain dans le forum Langage
    Réponses: 15
    Dernier message: 13/04/2006, 10h29
  4. [AJAX] PHP avec ajax(makerequest)
    Par Benjiijneb dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 11/04/2006, 16h53
  5. [AJAX] Erreur système : -1072896658 Code 0
    Par ericw78 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 01/02/2006, 19h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo