N'afficher que les valeurs de id=1 (de la XML)

Petit nouveau ! | 4 Messages

22 juin 2007, 19:45

Bonjour ,

Ici un débutant. Je tente de monter un site de location d'appart à l'aide du trio PHP/XSL/XML.

Dans ma xml, j'ai des valeurs qui se distinguent par appartement id=1 et id=2.

Version abrégée de mon code:

XML: (location.xml)

Code : Tout sélectionner

<?xml version="1.0" encoding="ISO-8859-1"?> <location> <appartement id="1"> <nom>Arcade</nom> <etoiles>etoiles4.gif</etoiles> </appartement> <appartement id="2"> <nom>Sierra</nom> <etoiles>etoiles3.gif</etoiles> </appartement> </location>
XSLT me sert à la mise en forme. Je pourrais créer une xml/xsl par appart mais ça me semble être un chemin un peu long. Il doit bien y avoir un moyen de filtrer l'info à partir d'une seule xml?

XSL: (intro_appart.xsl)

Code : Tout sélectionner

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="ISO-8859-1"/> <xsl:template match="/"> <div class="section_nom_app"><xsl:value-of select="nom"/><img> <xsl:attribute name="src"><xsl:value-of select="etoiles"/></xsl:attribute></img> </xsl:template> </xsl:stylesheet>
En gros, j'aimerais pouvoir dire à arcade.php de n'afficher que les valeurs de id=1 et sierra.php de n'afficher que les valeurs de id=2

PHP: (arcade.php)

Code : Tout sélectionner

<?php $mm_xsl = new MM_XSLTransform(); $mm_xsl->setXML("location.xml"); $mm_xsl->setXSL("intro_appart.xsl"); echo $mm_xsl->Transform(); ?>

Merci de me renseigner par un indice svp, :roll:

Mammouth du PHP | 19672 Messages

22 juin 2007, 19:51

Quelle version de PHP ? Si tu utilises PHP5, as-tu songé à trier avec SimpleXML pour créer un fichier temporaire pour chacun des id possibles ?

C'est une idée que je lance en l'air comme ça, mais c'est ce que j'explorerais.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 4 Messages

22 juin 2007, 19:53

Quelle version de PHP ? Si tu utilises PHP5, as-tu songé à trier avec SimpleXML pour créer un fichier temporaire pour chacun des id possibles ?
Salut, oui je suis sous PHP5. Je ne connais pas SimpleXML. Je vais faire des recherches. Je suis aussi sous Mac, je ne sais pas si ça change qqchose...

Mammouth du PHP | 19672 Messages

22 juin 2007, 20:03

Je suis aussi sous Mac, je ne sais pas si ça change qqchose...
À priori rien du tout.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 4 Messages

22 juin 2007, 20:22

J'ai téléchargé SimpleXML mais comme je ne sais pas vraiment ce que je dois faire, je ne suis pas plus avancé. Par où commencer pour régler mon problème? Xpath? Xquery?

Serait-ce possible de me donner un indice?

Mammouth du PHP | 19672 Messages

22 juin 2007, 20:25

J'ai téléchargé SimpleXML ...
:shock: SimpleXML est une extension de PHP5, il n'y a rien à télécharger : voir la doc
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 4 Messages

22 juin 2007, 21:50

Il me semble que je suis sur la bonne voie. L'indice SimpleXML était bon.

Merci Cyrano.