IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[PHP] [XSL] (débutant) Comment distinguer les valeurs pour chaques pages?


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 34
    Points : 19
    Points
    19
    Par défaut [PHP] [XSL] (débutant) Comment distinguer les valeurs pour chaques pages?
    Bonjour ,

    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. XSLT me sert à la mise en forme

    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

    Je pourrais le faire en créant 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...

    Version abrégée de mon code:

    XML: (location.xml)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?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>
    XSL: (intro_appart.xsl)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <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>

    PHP: (sierra.php)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      <?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,

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Tu peux passer des paramètres à une feuille XSLT

    voir code source
    http://xml.developpez.com/sources/?p...ansfo_PHP_XSLT

Discussions similaires

  1. [AC-2003] comment compter les enregistrements pour chaque mois
    Par bogmarley dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/09/2009, 10h31
  2. [MySQL] Recuperer les resultas d'une requête MySQL et acceder a les valeur pour chaque champ
    Par bourbita.thameur dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/03/2009, 16h48
  3. Réponses: 7
    Dernier message: 29/02/2008, 19h23
  4. Réponses: 1
    Dernier message: 04/06/2006, 00h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo