begin process at 2012 05 29 23:21:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

Framework

 > 

Ajax

 > 

Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

vendredi 22 mai 2009 à 18:52:34 | Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

mastertom



Bonjour,

Je génère un fichier xml grâce à un fichier php :

  <? xml version="1.0" encoding="utf-8" ?>
- < sondage >
  < id > 4 </ id >
  < theme > fporekfpeok </ theme >
  < presentation > FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok FREZPOFLKPOKkcpoez kzeok </ presentation >
  < dpt > 33 </ dpt >
  < cp > 33640 </ cp >
  < date > 2009-05-22 00:12:07 </ date >
  < budget > 5000 </ budget >
  < mise > 4374 </ mise >
  < photo > upload/projet/mini_1_090522124934.jpg </ photo >
  < description > po </ description >
  < photo > upload/projet/mini_0_090522124934.jpg </ photo >
  < description > desese </ description >
  < photo > upload/projet/0_090522124435.gif </ photo >
  < description />
  </ sondage >

Ensuite dans un fichier .js je récupère chaques balise grace à :

var mise = XML.getElementsByTagName("mise")[0].childNodes[0].nodeValue ;  //pour récupérer la ligne 'mise' par exemple.
Le problème c'est que j'ai plusieurs balise 'photo' et 'description' et je ne sais pas comment faire pour toutes les récupérer !

Pouvez-vous m'aider ?
vendredi 22 mai 2009 à 19:41:06 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

kazma

Administrateur CodeS-SourceS
bonjour tu recupere le numerode l'indexe

ex:
XML.getElementsByTagName("
photo ')[5];
vendredi 22 mai 2009 à 23:54:43 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

mastertom



 RE,

Oui sa je le savait, par ex si j'ai 2 photo je fait :

XML.getElementsByTagName("photo")[1].childNodes[0].nodeValue ; pour récupérer le seconde photo, le problème c'est que le nombre de photo varie de 0 à 3 donc je pourrai faire:

XML.getElementsByTagName("photo")[0].childNodes[0].nodeValue ;//récupère la première photo

XML.getElementsByTagName("photo")[1].childNodes[0].nodeValue ;

XML.getElementsByTagName("photo")[2].childNodes[0].nodeValue ; //récupère la troisième photo, mais si un sondage ne possède pas de photo j'obtient une erreur parceque bien sur les balise photo n'existe pas.

Je pense qu'il faudrai que je fasse une boucle et mettre le tout dans un tableau mais je ne sais pas comment m'y prendre


samedi 23 mai 2009 à 08:33:16 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

Bul3

Membre Club
Réponse acceptée !

bonjour,

getElementsByTagName c'est déjà un tableau

if ( XML.getElementsByTagName('photo').length )
{ for ( var n=0; n< XML.getElementsByTagName('photo').length; n++ =
  { gérer XML.getElementsByTagName('photo').[n].firstChild.nodeValue }
}

ou pas loin....

@+
samedi 23 mai 2009 à 16:23:08 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

Bul3

Membre Club
il fallait lire :
for ( var n=0; n< XML.getElementsByTagName('photo').length; n++ )
  { gérer XML.getElementsByTagName('photo')[n].firstChild.nodeValue }

dimanche 24 mai 2009 à 16:09:30 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

mastertom


Re,

Merci de ton aide 'Bul3' ^^ . ça marche presque ! Avec ça :

if ( XML.getElementsByTagName('photo').length )
{
var chemin = new Array(); // crée le tableau
 for ( var n=0; n < XML.getElementsByTagName('photo').length; n++)
  {
  var photo = XML.getElementsByTagName('photo')[n].childNodes[0].nodeValue;
  chemin.unshift(photo); //ajoute les chemins  dans un tableau
  }
}
//une fois les chemins des photos récupérer on les affiches
for (var i=0;i<3;i++){
var new_element = '<p><img src="'+chemin[i]+'"/></p>'; //devrai afficher chaques images
document.getElementById(getElem).innerHTML = new_element ;
}


avec ce code je réussi a rentré tout les chemins de mes photos dans le tableau 'chemin', par exemple si je fait alert(chemin[0]); cela m'affiche la première photo.
Mais ça m'en affiche une par une et non pas mes trois images côte à côte comme je voudrais.
En php j'ai réussi à afficher toutes mes photos avec le même genre de boucle grâce à :

for($i=0;$i<3;$i++) //on boucle autant de fois qu'il y a de photo
    {
        echo '<img src="'.$up_chemin_array[$i].'"/>&nbsp;'; // où $up_chemin_array contient les chemins de mes photos...
    }

Voilà, quelqu'un serait-il le faire en JS ?

Merci d'avance.

dimanche 24 mai 2009 à 16:26:15 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

Bul3

Membre Club

pourquoi mettre dans un array ?
je me cite ( en rectifiant ) :
>>getElementsByTagName c'est déjà un array !!!
  
if ( XML.getElementsByTagName('photo').length )
{ for ( var n=0; n< XML.getElementsByTagName('photo').length; n++ )
  { gérer XML.getElementsByTagName('photo')[n].firstChild.nodeValue }
}

>>$up_chemin_array contient les chemins de mes photos.
euh... c'est coté serveur ça ?
dans ce cas... le problème est tout autre
qu'un fichier xml....
tu n'as peut-être pas encore compris comment
les langages sur le serveur ( asp, php.... )
communiquent avec le micro, le client...
Ils ne communiquent pas !!!! le langage
serveur génère du "texte", et rien d'autres,
qui va être  affiché ou traité (si ajax)
par le html/javascript
dimanche 24 mai 2009 à 17:57:52 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

mastertom

Ce bout de code ne concerne pas mon problème :
 for($i=0;$i<3;$i++) //on boucle autant de fois qu'il y a de photo
    {
        echo '<img src="'.$up_chemin_array[$i].'"/>&nbsp;'; // où $up_chemin_array contient les chemins de mes photos...
    }

c'était juste pour dire que j'avais réussi a récupérer mes photos en php/mysql et que j'aimerais faire la même chose mais cette fois en javascript grâce à mon fichier XML cité plus haut.

 Et effectivement en faisant :

if ( XML.getElementsByTagName('photo').length )
{

 for ( var n=0; n < XML.getElementsByTagName('photo').length; n++)
  {
  var photo = XML.getElementsByTagName('photo')[n].childNodes[0].nodeValue;

  var new_element = '<p><img src="'+photo+'"/></p>';
  document.getElementById(getElem).innerHTML = new_element ;
  }

j'arrive au même résultat ^^ . Mais le problème est toujours présent, sa m'affiche les images une par une et non pas les 2 ou 3 photos que j'ai récupérer, à la suite comme désiré.

dimanche 24 mai 2009 à 20:09:54 | Re : Récupérer plusieurs lignes qui ont le même nom en JS à partir d'un fichier XML

mastertom


J'ai enfin trouvé la solution :

var photo = XML.getElementsByTagName('photo');
              var p = '';
              for(i=0; i<photo.length; i++)
              {
                var valeur = photo[i].childNodes[0].nodeValue;
                p += '<img src="'+valeur+'"/>&nbsp;';
                document.getElementById(getElem).innerHTML = p;
              }

Si ça peut aider quelqu'un !

A+


 



Cette discussion est classée dans : fichier, xml, photo, description, kzeok


Répondre à ce message

Sujets en rapport avec ce message

prob avec Javascipt et accssoirement xml [ par Thepp ] Mon probl est 2 niveaux- je dispose d'un fichier xml et celui-ci ne comporte pas de rfrence un fichier Xsl (masque d'affichage), je voudrais trouver Lire fichier XML [ par indiana_jules ] Bonjour,voilà, j'ai une petite question. Je sais qu'on peut en javascript lire dex fichiers XML, notamment en utilisant :var xmldoc = new ActiveXObjec lecture d un xml avec javascript et sauvegarde [ par glad777 ] Bonjour a tous et a toutesj aimerai savoir comment faire pour avoir une fonction javascript qui puisse me lire un fichier xml, j ai lu un code avec va joindre une photo a un formulaire [ par 10e_licorne ] voila mon problèmedes collectionneurs me joigne par un formulaire pour des identifications d'objetsmon formulaire fonctionne correctement par mailto:x probleme javascript/xml [ par nezdeboeuf62 ] Bonjour tout le monde !!!Voila j'ai un probleme assez terrible qui mpe deprime!!!Je gere un menu stocké dans un fichier xml. Je voudrais recuperer ce Une fonction que je ne trouve pas !!! [ par jpjuan ] J'ai en exemple 02 fichier htm (visite.htm et sdb01.htm) et une photo (sdb01.jpg) quand on exécute le fichier visite, il affiche une mignature de sdb0 [AJAX] Fontion JS sans effet [ par LoKus ] Salut à tous, J'ai crée un ensemble de fonction JS (à partir de scripts trouvés un peu partout sur internet) dont le but est de charger un fichier XM Comment écrire dans un fichier XML grace à une fonction javascript [ par techwarior2 ] Bonjour à tous ceux qui connaisse le XML, aux autre aussi !! J'aimerai pouvoir lors de l'entrée dans un if { } mémoriser ce passage dans un document Lier des infos xml à une page html ? [ par skullo ] Bonjour à tous et désolé mais je ne savais pas vraiment où caser ce sujet...Je débute tout juste en xml et j'aimerai relier des données d'un fichier x applet envoie un fichier xml a la servlets [ par hlaura ] Bonjour a tous,Mon but est de faire communiquer une applet avec une servlet.J'ai une applet qui recupere les données d'un formulaire(applet) et les en


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales