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 :

récuperer l'id d'un fichier xml et afficher ses données


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut récuperer l'id d'un fichier xml et afficher ses données
    Bonjour à tous,
    Tout d'abord je suis un débutant en xml,xsl.
    Voilà ma question j'ai un fichier xml contenant id d'un article et je voudrais afficher dans un fichier xsl les données de l'id c'est à dire le titre et la couleur correspondant à l'id.
    Pourriez-vous m'aider..en me donnant un exemple...ca serait super sympa.
    Merci beaucoup

    <?xml version="1.0" encoding="utf-8"?>
    <?xml-stylesheet type="text/xsl" href="catalogue.xsl"?>
    <magasin>
    <catalogue>
    <id>1</id>
    <titre>chemise</titre>
    <couleur>noire</couleur>
    </catalogue>
    <catalogue>
    <id>2</id>
    <titre>pantalon</titre>
    <couleur>vert</couleur>
    </catalogue>
    </magasin>

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    par exemple pour l'id=1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     
    <xsl:template match="/">
         <resultat>
               <xsl:value-of select="magasin/catalogue[id=1]/titre" />
               <xsl:value-of select="magasin/catalogue[id=1]/couleur" />
         </resultat>
    </xsl:template>
    </xsl:stylesheet>

    ERE
    Quand une tête pense seule, elle devient folle.

  3. #3
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    super merci beaucoup..
    Par contre si je veux récuperer un id depuis un lien web du genre http://www.exemple.com/test.html?id=4

    et je voudrai récuper dans mon fichier tous ce qui concerne mon id 4
    est -ce que c'est possible ?

  4. #4
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    C'est un peu plus compliqué: tu récupères ton paramètre id dans l'url d'appel;
    Ensuite tu dois créer un paramètre pId dans ton xsl, paramètre auquel tu affecteras l'id passé dans l'URL.

    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="UTF-8"?>
    <xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <!--  1 est une valeur paar défaut -->
    <xsl:param name="pId" select="'1'" />
     
    <xsl:template match="/">
         <resultat>
               <xsl:value-of select="magasin/catalogue[id=$pId]/titre" />
               <xsl:value-of select="magasin/catalogue[id=$pId]/couleur" />
         </resultat>
    </xsl:template>
    </xsl:stylesheet>
    A toi de voir comment ton système te permet de passer le paramètre id lors de la transformation.

    Par exemple en java cela peut être:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java com.toto.StyleSheet .... transfo.xsl bodyTextSize=8pt
    ERE
    Quand une tête pense seule, elle devient folle.

  5. #5
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    hello merci beaucoup pour ta réponse..et surtout de ta patience
    j'ai bien compris ton code...xsl par contre la partie récupèrer ton paramètre id dans l'url d'appel...j'ai pas compris...
    J'ose te demander encore un exemple ? Ca serait super sympas...

  6. #6
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    hello merci beaucoup pour ta réponse..et surtout de ta patience
    j'ai bien compris ton code...xsl par contre la partie récupèrer ton paramètre id dans l'url d'appel...j'ai pas compris...
    J'ose te demander encore un exemple ? Ca serait super sympas...

    Quel est ton environnement de développement, et quelle librairie utilises tu ?

    ERE
    Quand une tête pense seule, elle devient folle.

  7. #7
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    Hello surpris de te voir me répondre un vendredi soir...merci beaucoup
    Je développe mes pages en html....et suis obligé pas de php..ni asp..juste du html. j'utilise aucune librairie.....par contre je peux utliser comme librairie...prototype...

  8. #8
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    Hello surpris de te voir me répondre un vendredi soir...merci beaucoup
    Je développe mes pages en html....et suis obligé pas de php..ni asp..juste du html. j'utilise aucune librairie.....par contre je peux utliser comme librairie...prototype...
    Si je comprends bien tu as juste besoin d'extraire des informations de ton fichier XML ? Ou tu as besoin de transformer le fichier xml pour en produire un autre?

    J'ai l'impression que tu mélanges XSL et interrogation...

    Dis moi.

    ERE
    Quand une tête pense seule, elle devient folle.

  9. #9
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    hello et merci de ta grande.....patience..
    je dois extraire...les données de mon fichier xml
    d'après l'id ...

  10. #10
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    hello et merci de ta grande.....patience..
    je dois extraire...les données de mon fichier xml
    d'après l'id ...
    Ha bon !
    Dans ce cas il n'est nul besoin de XSL...

    Donc en résumé, tu as sur le client un fichier HTML. Et d'où sortent tes données XML ? Comment fais tu pour les récupérer ?

    ERE
    Quand une tête pense seule, elle devient folle.

  11. #11
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    hello merci beaucoup pour ta patience.
    Le fichier xml est créer par moi....et pour afficher le résultat du xsl.
    et dans ce fichier xml il y a une balise id ..
    J'espère que j'ai été plus clair.....

  12. #12
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    hello merci beaucoup pour ta patience.
    Le fichier xml est créer par moi....et pour afficher le résultat du xsl.
    et dans ce fichier xml il y a une balise id ..
    J'espère que j'ai été plus clair.....
    Désolé, mais je ne comprends pas.

    Tu as un fichier XML que tu crées. Appelons le datas.xml.

    Que tapes tu comme commande dans ton navigateur ?

    http://...../fichier.html
    ou http://...../datas.xml ?

    Si tu tapes http://...../fichier.html, qu'y a t il dans ton fichier html ?
    Si tu tapes http://...../datas.xml, je suppose que tu fais alors une transformation XSL ?

    Peux tu préciser ces points stp.

    ERE
    Quand une tête pense seule, elle devient folle.

  13. #13
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    incroyable on doit être les seuls sur le forum un dimanche... désolé de t'infliger cela..

    donc oui j'ai un fichier xml
    <?xml version="1.0" encoding="utf-8"?>
    <?xml-stylesheet type="text/xsl" href="catalogue.xsl"?>
    <magasin>
    <catalogue>
    <id>1</id

    <titre>chemise</titre>
    <couleur>noire</couleur>
    </catalogue>
    <catalogue>
    <id>2</id>
    <titre>pantalon</titre>
    <couleur>vert</couleur>
    </catalogue>
    </magasin>

    je tape donc datas.xml et que je transforme en xsl..comme tu me l'as montrer..hier..

    Je vais aussi essaye de t'explique ce que je voudrai au résultat peux-être que ce sera plus simple pour toi...

    j'ai donc mon fichier datas.xml qui m'affiche toute les donnes de ce fichier datas.xml en xsl....

    exemple:
    pantalons
    chemise
    cravates

    et je voudrai que quand je clique sur l'un des 3 articles...cela m'affiche le détails de cet article...
    (je sais pas si dans mon fichier xml je dois ajouter une balise <liens>)

    En résumé cela m'affiche en xsl tous les données de datas.xml et quand je clique sous l'un des articles...que cela m'affiche à nouveau les données du fichier datas.xml mais seulement celui du fichiers séléctionné.
    J'espère que j'ai été plus clair.
    En tout cas je te remercie beaucoup de ton aide

  14. #14
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Là c'est TRES clair

    En fait tu as besoin d'intéractivité côté client.

    Donc logiquement, ta transformation XSL pourrait fabriquer du code HTML dont la logique serait effectivement de montrer/cacher/détailler/recharger tel ou tel article. Mais c'est tout une page HTML avec certainement du javascript que tu va être obligé de mettre en oeuvre.

    Je ne suis pas sûr que ce système xml/xsl soit la meilleure solution pour débuter. Car la programamtion xsl à laquelle tu vas être confrontée sera certainement pas aisée dès que tu vas avoir besoin de faire des boucles et autres syntaxes...

    ERE
    Quand une tête pense seule, elle devient folle.

  15. #15
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    aiiiiieeeee...super pour ta réponse... l'idée donc serait de tout afficher...les données ensuite avec un javascript afficher / cacher / recharger avec un javascript.

    Puis-je abusé de ta patience et de tes compétence..as-tu un petit exemple sais pas par quoi commencer ?
    Ca serait trop cool

  16. #16
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    aiiiiieeeee...super pour ta réponse... l'idée donc serait de tout afficher...les données ensuite avec un javascript afficher / cacher / recharger avec un javascript.

    Puis-je abusé de ta patience et de tes compétence..as-tu un petit exemple sais pas par quoi commencer ?
    Ca serait trop cool
    Il n'existe pas de code "exemple" pour ce genre de chose. Je te conseille de commencer par faire la page HTML statique, l'ergonomie dans laquelle va prendre place ton projet. Ensuite tu pourras voir quel code et données sont à utiliser et comment les inplanter.

    Désolé, mais là le périmètre est vraiment trop important et dépasse le cadre d'une simple entraide !

    Amicalement,

    ERE
    Quand une tête pense seule, elle devient folle.

  17. #17
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    En tout cas merci beaucoup pour ton aide.
    Penses-tu que je pourrais-utiliser de l'ajax ?
    Serais-ce une bonne idée ?
    Merci beaucoup

  18. #18
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    En tout cas merci beaucoup pour ton aide.
    Penses-tu que je pourrais-utiliser de l'ajax ?
    Serais-ce une bonne idée ?
    Merci beaucoup
    Oui pourquoi pas ! Mais cela n'est pas du tout obligatoire. Il y a une tendance actuelle à mettre de l'Ajax partout comme si c'était indispensable ou gage d'un bon développement. Pas du tout.

    ERE
    Quand une tête pense seule, elle devient folle.

  19. #19
    Membre du Club
    Inscrit en
    Mars 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 97
    Points : 47
    Points
    47
    Par défaut
    j'ai de la peine.....sais pas comment implanter..

  20. #20
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Citation Envoyé par iomega Voir le message
    j'ai de la peine.....sais pas comment implanter..
    Regarde du côté des faq javascript et html, c'est une très bonne base. Et en utilisant un éditeur de HTML tu pourras certainement fabriquer une première interface.

    ERE
    Quand une tête pense seule, elle devient folle.

Discussions similaires

  1. Récuperer des valeurs dans un fichier xml
    Par chych dans le forum ANT
    Réponses: 0
    Dernier message: 20/01/2011, 15h19
  2. [SAX] Récuperation des éléments d'un fichier XML
    Par EmmaEmy dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 02/09/2009, 15h51
  3. Fichier XML et insertion de données
    Par will2taz dans le forum VB.NET
    Réponses: 0
    Dernier message: 04/09/2007, 10h35
  4. Que choisir pour gérer les sauvegardes : fichiers XML ou base de données ?
    Par Invité dans le forum Développement 2D, 3D et Jeux
    Réponses: 11
    Dernier message: 14/06/2007, 11h58
  5. [MySQL] utilisé un fichier XML pour stocker des données ?
    Par italiasky dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/05/2007, 11h04

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