Bonjour à tous,
j'ai un soucis pour trouver des renseignements sur ce sujet c'est pourquoi je fais appel à la matière grise de ce forum.
Tout d'abord je debute dans le XML/XSL.
Je cherche à utiliser mon XML comme une BBD et donc mon XSL me sert à la mise en forme et l'affichage de mes données.
J'ai déjà réussi, avec de l'aide ici, à créer une liste déroulante. Elle m'affiche une liste de nom, je voudrais maintenant afficher les éléments qui correspondent à cette liste en fonction du choix de nom que je séléctionne avec ma liste.
Mon XML:
Mon XSL en chantier:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="clients.xsl"?> <ENT> <Clients> <nom></nom> <site></site> <adresse></adresse> <cp></cp> <ville></ville> <tel></tel> <fax></fax> </Clients> </ENT>
Ici j'affiche bien un site mais il ne correspond pas au client et ne se modifie pas si je choisis un autre nom. J'ai déjà essayé d'insérer des conditions xsl:if ou xsl:when, mais je fais ça un peu au petit bonheur la chance, n'ayant rien trouvé de concret sur le net et ne comprenant pas vraiment ce que je fais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Forma " xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions"> <xsl:template match="/"> <html><head><title/></head> <body> <form> <select size="1"><optgroup label="clients"> <xsl:apply-templates select="//Clients"/> </optgroup></select> </form> <p>Site: <table> <tr> <td> <xsl:value-of select="//site"/> </td> </tr> </table> </p> </body> </html> </xsl:template> <xsl:template match="Clients"> <option><xsl:value-of select="nom"/></option> </xsl:template> </xsl:stylesheet>
En gros ça peut me prendre tout une vie, donc si quelqu'un peu me mettre sur la voie, apporter un peu d'eau à mon moulin, je lui en serais reconnaissant.
Merci
Partager