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] XMLHTTPREQUEST ne se met pas à jour :-/


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 21
    Points : 21
    Points
    21
    Par défaut [AJAX] XMLHTTPREQUEST ne se met pas à jour :-/
    Bonjour à tous,

    j'ai suivi le tutorial suivant:
    http://siddh.developpez.com/articles/ajax/

    Et j'ai souhaité testé l'exemple proposé dans la partie 3:
    la page principal (index.html) lit grace à l'objet xmlhttprequest un code php (ajax.php) lorsque l'on clic sur le bouton (mise en ligne ici: http://talbarts.free.fr/labo).

    Seulement lorsque je change le fichier ajax.php (conformément à ce qu'il y a écrit dans le tutorial) , aprés avoir cliqué sur le bouton sans avoir rechargé la page principal j'obtient exactement le même résultat, comme si ajax.php n'avait pas été modifié. J'ai testé cet exemple sous Internet Explorer, je ne sais pas si ça fonctionne pour Firefox.

    Quelqu'un saurai t-il d'ou vient le problème ?

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 144
    Points : 129
    Points
    129
    Par défaut
    Salut,
    pourrais tu être plus clair ! Que cherches tu ?

    - Savoir si ton code marche ? Dans ce cas un ptit exemple, ça pourrait nous aider

    - Savoir si lorsque l'on ne recharge pas la page, il reste bloquer sur l'ancien fichier ajax.php ? Dans ce cas, je ne sais pas, à priori il n'y a pas de raison.
    "Il n'y a ni gagnant ni perdant, juste des joueurs ..."

    Pensez, si vous le pouvez encore, au tag RESOLU
    Nb: Note à moi même, ne l'oublis pas sinon tu vas te faire traiter

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Probleme résolu grace a ce post
    ==> http://www.developpez.net/forums/sho...xmlhttprequest

    Je suis désolé je ne l'avait pas trouvé lors de mes recherches !

    Merci quand même

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 21
    Points : 21
    Points
    21
    Par défaut
    Non en fait le programme en lui même fonctionne. Mais lorsque l'on changeait le contenu de ajax.php, le texte du msgbox restait inchangé. Apparement cela ne se produit que sous IE. Mais le post mentionné ci-dessus regle le problême .

  5. #5
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 289
    Points
    3 289
    Par défaut
    Citation Envoyé par franckarts
    Bonjour à tous,

    j'ai suivi le tutorial suivant:
    http://siddh.developpez.com/articles/ajax/
    Très mauvaise idée, y a une faute dedans (non prise en charge d'un cas théorique et fonction getXhr mal optimisée) qui a déjà couté de nombreuses heures à certaines personnes lors pour la correction... vu que le code en lui-même est bon ! Il suffit juste de corriger quelques petites fautes...

    Remplacer la méthode getXhr par le code suivant (plus long mais plus efficace, les temps de renvoi sont quasiment identiques (le mien étant sensiblement plus rapide) excepté lors de la première instanciation sur IE (ou mon script est légèrement plus long))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    // Renvoie le texte de l'objet ActiveXObject le plus récent depuis une liste
    var pickRecentProgID = function (idList){
    	// found progID flag
        var bFound = false;
        for(var i=0; i < idList.length && !bFound; i++){
            try{
                var oDoc = new ActiveXObject(idList[i]);
                o2Store = idList[i];
                bFound = true;
            }catch (objException){
                // trap; try next progID
            };
        };
        if (!bFound)
    		throw ("Aucun ActiveXObject n'est valide sur votre ordinateur, pensez à mettre à jour votre navigateur");
        idList = null;
        return o2Store;
    }
     
    // Retourne un nouvel objet XmlHttpRequest
    var GetXmlHttpRequest_AXO=null
    var GetXmlHttpRequest=function () {
    	if (window.XMLHttpRequest) {
    		return new XMLHttpRequest()
    	}
    	else if (window.ActiveXObject) {
    		if (!GetXmlHttpRequest_AXO) {
    			GetXmlHttpRequest_AXO=pickRecentProgID(["Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"]);
    		}
    		return new ActiveXObject(GetXmlHttpRequest_AXO)
    	}
    	return false;
    }
     
    // Compatibilité avec le tuto
    getXhr=GetXmlHttpRequest;
    Ensuite la vraie faute, dont la correction dans le tutoriel devrait, j'espère, ne plus trop tarder (je donne ici un exemple de fois ou je propose la correction, comme vous pouvez le constater, il est tjrs possible de procédant par essai-erreur de "corriger" la faute, mais ce n'est que virtuel car sur une connection plus lente la faute est souvent inévitable) :
    XmlHttpRequest en parallèles

    A noter tout de même que le tutoriel n'est pas la cause de ton problème et la solution qui t'a été donnée est admirable !
    En effet, pour corriger le problème j'utilisais plutot la solution suivante (qui marchait tout aussi bien malgré tout) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url += "&currentDate=" + escape(new Date())
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

Discussions similaires

  1. [script.aculo.us] element.observer ne se met pas à jour après un ajax.updater
    Par PapyFouras dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 16/01/2010, 11h19
  2. [AJAX] Ma table ne se met pas à jour (PHP et AJAX)
    Par beegees dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/02/2009, 13h10
  3. AJAX - Formulaire qui ne se met pas à jour
    Par wenijah dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/11/2007, 10h31
  4. Update Récalcitrante !! Ne met pas à jour !
    Par samlepiratepaddy dans le forum Access
    Réponses: 14
    Dernier message: 28/10/2005, 09h31
  5. un update qui ne met pas à jour
    Par dor_boucle dans le forum Requêtes
    Réponses: 3
    Dernier message: 14/10/2005, 09h31

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