Charger une page XML pour la trier avec un script.

cs_NIKO83 Messages postés 3 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 21 janvier 2009 - 21 janv. 2009 à 16:10
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 22 janv. 2009 à 09:44
Le savoir est une force qui grandit quand on la partage

Bomjour à tous,
J'ai mis au point avec pluieurs sources un systeme pour trier mes films via un fichier XML interpreté par une feuille Html et son Script. 

Le script a l'air de fonctionner , mais je n'arrive pas a charger le noeuds qui m'interesse dans le Xml,
resultat rien ne s'affiche à part le titre de chaque colone dans mon tableau Html.

Pour plus de clarté:
*****************
Le Xml  (0-index.xml) :
*****************
<?xml version= "1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="0-style.xsl"?>
<Data>
  <Video>
    <Film>
      <titre>Foule sentimentale</titre>
      Alain Souchon
    </Film>
    <Film>
      <titre>L'incroyable Hulk</titre>
      Inconnu
      <Genre>Action</Genre>
     
        <src>hulk.jpg</src>
     
       <Resume></Resume>
    </Film>
    <Film>
      <titre>Hostel 2</titre>
     
      <Genre>Horreur</Genre>
     
        <src>Hostel_2.jpg</src>
     
      <Resume></Resume>
    </Film>
    <Film>
      <titre>Le dernier roi d'ecosse</titre>
     
      <Genre>Drame</Genre>
     
        <src>last_king-scotland.jpg</src>
     
 <Resume></Resume>   
 </Film>
    <Film>
      <titre>Taken</titre>
     
      <Genre>Thriller</Genre>
     
        <src>taken.jpg</src>
     
    </Film> 
  </Video>
</Data>

*****************************************
Et la page Html contenant le script (sort_books.htm):
*****************************************

<HTML>
<HEAD>
<TITLE>Trier les Films du serveur.</TITLE>
<XML SRC="0-index.xml"></XML>
</HEAD>



<script language="JavaScript">
<!--
// Hide from older browsers
var titreArray = new Array();
var artisteArray = new Array();
var GenreArray = new Array();
var ResumeArray = new Array();


function SortBooks(How)
    {
 Result="\";
  if (How == \"titre\")
        {
  Result +=\"<CAPTION>Films classés par titre</CAPTION>\"
  Result +=\"----
titre |Artiste |Genre |Image |Resume |\"
         titreArray.sort();
   for (i = 0; i < titreArray.length; i++)
            {
             Result += \"----
\" + titreArray[i] + \"\";
            }
        }
  if (How == \"artiste\")
        {
  Result +=\"<CAPTION>Films classés par Artiste</CAPTION>\"
  Result +=\"----
Artiste |titre |Genre |Image |Resume |\"
  artisteArray.sort();
        for (i = 0; i < artisteArray.length; i++)
            {
             Result += \"----
\" + artisteArray[i] + \"\";
            }
        }
 if (How == \"Genre\")
        {
  Result +=\"<CAPTION>Films classés par Genre</CAPTION>\"
  Result +=\"----
Genre |titre |Artiste |Image |Resume |\"
  GenreArray.sort();
        for (i = 0; i < GenreArray.length; i++)
            {
             Result += \"----
\" + GenreArray[i] + \"\";
            }
        }
if (How == \"Resume\")
        {
  Result +=\"<CAPTION>Films classés par sujet</CAPTION>\"
  Result +=\"----
Resume |titre |Artiste |Genre |Image |\"
 ResumeArray.sort();
        for (i = 0; i < ResumeArray.length; i++)
            {
             Result += \"----
\" + ResumeArray[i] + \"\";
            }
        }
    Result += "
";
 return Result;
    }
function LoadArrays(Film)
    {
    var Count = 0;
    var Resume;
    var titre;
    var Genre;
    var Image;
    var artiste;
    var Data = Doc.documentElement.firstChild;
    while (Data != null)
        {
  Resume = Film.selectSingleNode("Resume").text
     titre = " " + Film.selectSingleNode("titre").text + " "
  Genre = Film.selectSingleNode("Genre").text
            artiste = Film.selectSingleNode("artiste")
            Image = Film.selectSingleNode("Image").text;
  
 


     titreArray[Count] =  "<TD>" + titre + "</TD>";
  titreArray[Count] += "<TD>" + artiste+ "</TD>";
       titreArray[Count] += "<TD>" + Genre + "</TD>";
  titreArray[Count] +=  "<TD>" + Image + "</TD>";
  titreArray[Count] +=  "<TD>" + Resume + "</TD>";


  GenreArray[Count] =  "<TD>" + Genre + "</TD>";
   GenreArray[Count] += "<TD>" + titre + "</TD>";
  GenreArray[Count] +=  "<TD>" + Artiste + "</TD>";
  GenreArray[Count] +=  "<TD>" + Image + "</TD>";
  GenreArray[Count] +=  "<TD>" + Resume + "</TD>";


  artisteArray[Count] = "<TD>" + artiste + "</TD>";
  artisteArray[Count] += "<TD>" + titre + "</TD>";
  artisteArray[Count] += "<TD>" + Genre + "</TD>";
  artisteArray[Count] +=  "<TD>" + Image + "</TD>";
  artisteArray[Count] +=  "<TD>" + Resume + "</TD>";


  ResumeArray[Count] =  "<TD>" + Sujet + "</TD>";
  ResumeArray[Count] += "<TD>" + NomAuteur + "</TD>";
  ResumeArray[Count] += "<TD>" + titre + "</TD>";
  ResumeArray[Count] += "<TD>" + Editeur + "</TD>";
  ResumeArray[Count] +=  "<TD>" + Annee + "</TD>";


         Count++;


         Film = Film.nextSibling;
        }
    }
// Stop hiding
// -->
</SCRIPT>



 Trier les Films du serveur.

<form>
  ----

  
 &nbsp;
 ,
  
 &nbsp;
 ,
   
 &nbsp;
 ,
  
 &nbsp;
 ,
 

</form>



</HTML>
******************************

Help me !!

1 réponse

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 14
22 janv. 2009 à 09:44
bonjour,
pourquoi n'utilises-tu pas le xsl ?
trier et créer un tableau xml peut se faire "simplement"
avec le xsl, il est un peu là pour ce genre de chose..
un ch'tiot exemple ici
Cordialement

          [mon Site] [M'écrire] Bul         
0