Afficher des données XML

spatz -  
 spatz -
Bonjour à tous,

J'ai le fichier test.xml suivant:

<?xml version="1.0" encoding="ISO-8859-1"?>
<articles>
  <PN200>
    <specifications>
      <dimension>texte</dimension>
      <taille_ecran>texte</taille_ecran>
      <resolution>texte</resolution>
      <ecran>texte</ecran>
      <poids>texte</poids>
      <batterie>texte</batterie>
      <autonomie>texte</autonomie>
      <etanche>texte</etanche>
      <recepteur>texte</recepteur>
    </specifications>
    <cartes>
      <carte_base>texte</carte_base>
      <carte_chargee>texte(régional)</carte_chargee>
      <ajout_carte>texte</ajout_carte>
      <memoire>texte</memoire>
      <carte_memoire>texte</carte_memoire>
      <waypoint>texte</waypoint>
      <itineraire>texte</itineraire>
    </cartes>
  </PN200>
</articles>


Ma question:

Existe t'il un code en php qui me permet d'afficher ces données dans un tableau?

Actuellement:

Pour l'instant j'utilise le code suivant mais qui est très long et fastidieux...

<? //Chargement du fichier specs.xml
  $objDOM = new DOMDocument();
  $objDOM->load("test.xml"); 
  $articles = $objDOM->getElementsByTagName("$_GET[id]");
  foreach( $articles as $value )
  {
    $get_dimension = $value->getElementsByTagName("dimension");
    $dimension  = $get_dimension->item(0)->nodeValue;
    $get_taille_ecran = $value->getElementsByTagName("taille_ecran");
    $taille_ecran  = $get_taille_ecran->item(0)->nodeValue;
	$get_resolution = $value->getElementsByTagName("resolution");
    $resolution  = $get_resolution->item(0)->nodeValue;
	$get_ecran = $value->getElementsByTagName("ecran");
    $ecran  = $get_ecran->item(0)->nodeValue;
	$get_poids = $value->getElementsByTagName("poids");
    $poids  = $get_poids->item(0)->nodeValue;
	$get_batterie = $value->getElementsByTagName("batterie");
    $batterie  = $get_batterie->item(0)->nodeValue;
	$get_autonomie = $value->getElementsByTagName("autonomie");
    $autonomie  = $get_autonomie->item(0)->nodeValue;
etc..
}
?>
        <table id="playlist" cellspacing="0">
          <tbody>
            <tr class="title">
              <td colspan="2"><h3>Sp&eacute;cifications:</h3></td>
            </tr>
            <tr class="odd">
              <td> Dimensions de l'appareil, L × H × P: </td>
              <td><?php echo $dimension ?> </td>
            </tr>
            <tr class="even">
              <td> Taille de l'&eacute;cran, L × H: </td>
              <td><?php echo $taille_ecran ?> </td>
            </tr>
            <tr class="odd">
              <td> R&eacute;solution de l'&eacute;cran, L × H: </td>
              <td><?php echo $resolution ?> </td>
            </tr>
            <tr class="even">
              <td> Type d'&eacute;cran: </td>
              <td><?php echo $ecran ?> </td>
            </tr>
            <tr class="odd">
              <td> Poids: </td>
              <td><?php echo $poids ?> </td>
            </tr>
            <tr class="even">
              <td> Batterie: </td>
              <td><?php echo $batterie ?> </td>
            </tr>
            <tr class="odd">
              <td> Autonomie de la batterie: </td>
              <td><?php echo $autonomie ?> </td>
            </tr>
            <tr class="even">
              <td> Etanche: </td>
              <td><?php echo $etanche ?> </td>
            </tr>
            <tr class="odd">
              <td> R&eacute;cepteur haute sensibilit&eacute;: </td>
              <td><?php echo $recepteur ?> </td>
            </tr>
          </tbody>
        </table>
  <?  }?>


Vous l'aurez compris, pour chaque entrée je créé tout manuellement :( Autant dire que si le fichier XML est bien chargé, ce sera la galère à tout coder.

Voila, j'espère que vous aurait comprit mes doléances, dans le cas contraire je répondrais volontiers à vos questions.

Merci à Tous
A voir également:

1 réponse

Simon
 
Hello,

Pourquoi utiliser php? XSL ne ferait pas l'affaire? Ma question semble un peu bête mais peut-être que tu passes à côté de l'évidence... ou c'est moi qui suis à côté de la plaque.
0
spatz
 
Ben je ne connais pas tellement le XSL.

C'est que tout mon site est en PHP... tu peux donc intégrer XSL dedant je présume?
0