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:
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>
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
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>
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.
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