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

AJAX Discussion :

[AJAX] manipulation de fichier XML


Sujet :

AJAX

  1. #1
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 75
    Points : 50
    Points
    50
    Par défaut [AJAX] manipulation de fichier XML
    Bonjour,

    Voilà mon problème : Mon formateur m'a donné un TP consistant à lire des liens rss. Il m'a fourni la fonction suivante afin d'aller chercher les données à l'adresse en question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function proxyRequest(url){
    	var content;
    	var myAjax = new Ajax.Request(
    		'proxy.php',
    		{
    			method: 'get',
    			parameters: 'url='+url,
    			onComplete: function(req) {
    				content = req.responseXML;				
    			}
    	});
    	return content;
    }
    Je vois dans Firebug que le fichier est bien rapatrié, mais je n'arrive pas à transformer ces données en "sac de noeuds" afin que je puisse décortiquer le fichier xml. En fait, mon code ci-dessous me renvoie l'erreur "contenuLienRSS is undefined" quand je déclare la variable "root".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function KiAppelleLaPrecedenteFonction(){
    	var contenuLienRSS = proxyRequest("http://www.gameblog.fr/rss.php");
     
    	var root = contenuLienRSS.documentElement;
    	var items = contenuLienRSS.childNodes;
     
    }
    Je me suis cassé les dents pendant 45 minutes à tout tripoter mon code. Je réclame donc désormais vos lumières. Amen.

    Merci par avance.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Salut.

    Dans la mesure où ton appel Ajax est asynchrone (valeur par défaut de Ajax.Request), JavaScript n'attend pas la réponse pour aller aux instructions suivantes, donc quand tu définis ta variable root, le document XML n'existe pas encore.
    C'est dans le onComplete qu'il faut faire les traitements de retour.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. [AJAX] Parser un fichier XML
    Par namstou3 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/10/2007, 11h40
  2. [AJAX] Transmettre un fichier XML entre deux serveurs via un client
    Par quentin_ler dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/08/2007, 10h03
  3. [AJAX] requête sur fichier.xml => erreur 405 sous IE !
    Par jeje13009 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 26/03/2007, 21h42
  4. [AJAX] Charger un fichier XML Schema
    Par kingmandrax dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/10/2006, 10h55
  5. [xml] Manipuler un fichier XML récupéré dynamiquement
    Par goldenboy68 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 03/10/2005, 11h59

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