mastertom
Messages postés8Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention24 mai 2009
-
22 mai 2009 à 18:52
mastertom
Messages postés8Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention24 mai 2009
-
24 mai 2009 à 20:09
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 !
mastertom
Messages postés8Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention24 mai 2009 22 mai 2009 à 23:54
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
mastertom
Messages postés8Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention24 mai 2009 24 mai 2009 à 16:09
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 = '
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 ' '; // où $up_chemin_array contient les chemins de mes photos...
}
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 24 mai 2009 à 16:26
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
mastertom
Messages postés8Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention24 mai 2009 24 mai 2009 à 17:57
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 ' '; // 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;
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é.