PB affichage XML a partir d'un XSL
coubi
-
s.spark Messages postés 2528 Statut Contributeur -
s.spark Messages postés 2528 Statut Contributeur -
PB Affichage XML grace à une feuille de style XSL
Voila j'ai un tableau et je voudrais que mon tableau se mette à la forme de mes donnée.
J'ai un cours qui dure 1h et donc qui prenne 2 cellules de mon tableau.
...
<td>8h00</td>
<xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'lundi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><xsl:variable name="dur" select="when/duree"/></xsl:when></xsl:choose></xsl:if></xsl:for-each>
<td rowspan="{$dur}">...</td>
merci
Voila j'ai un tableau et je voudrais que mon tableau se mette à la forme de mes donnée.
J'ai un cours qui dure 1h et donc qui prenne 2 cellules de mon tableau.
...
<td>8h00</td>
<xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'lundi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><xsl:variable name="dur" select="when/duree"/></xsl:when></xsl:choose></xsl:if></xsl:for-each>
<td rowspan="{$dur}">...</td>
merci
A voir également:
- PB affichage XML a partir d'un XSL
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Xml viewer - Télécharger - Édition & Programmation
- Comment faire une recherche à partir d'une photo - Guide
- Affichage double ecran - Guide
- Office xml handler - Télécharger - Traitement de texte
7 réponses
C'est bon j'ai trouvé la solution, en fait le truc c'est qu'il fallait que je mette tout mon code contenu dans le <td> dans ma boucle <xsl:for-each> juste apres ma variable.
merci quand meme !!!!
<td>8h00</td>
<xsl:for-each select="edt/cours">
<xsl:if test="jour = 'lundi'">
<xsl:choose>
<xsl:when test="heure_debut = '08h00'">
<xsl:variable name="heurefin"><xsl:value-of select="heure_fin"/></xsl:variable>
<xsl:variable name="fin" select="substring($heurefin,1,2)"/>
<xsl:variable name="int" select="number($fin)"/>
<xsl:variable name="dur" select="number((($int)-08)*2)"/>
<td rowspan="{$dur}">
<table>
<tr>
<td id="cours">
<xsl:value-of select="type_cours"/> - <xsl:value-of select="matiere"/>
</td>
</tr>
<tr>
<td id="qui">
<xsl:value-of select="enseignants"/>
</td>
</tr>
<tr>
<td id="ou">
<xsl:value-of select="lieu"/>
</td>
</tr>
</table>
</td>
</xsl:when>
<xsl:otherwise><td></td></xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:for-each>
merci quand meme !!!!
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet href="./style.xsl" type="text/xsl"?>
<!DOCTYPE edt SYSTEM 'groupes.dtd'>
<edt>
<cours>
<when>
<periode_debut>25/01/2007</periode_debut>
<periode_fin>22/03/2007</periode_fin>
<jour>lundi</jour>
<heure_debut>08h00</heure_debut>
<heure_fin>10h00</heure_fin>
<duree>2</duree>
</when>
<where>
<lieu>D001-003,I224(X)</lieu>
</where>
<what>
<matiere>Gestion</matiere>
<type_cours>TP</type_cours>
</what>
<who>
<participants>311</participants>
<enseignants>CARNOHAN Elisabeth</enseignants>
</who>
<others>
<description></description>
</others>
</cours>
<cours>
<when>
<periode_debut>25/01/2007</periode_debut>
<periode_fin>22/03/2007</periode_fin>
<jour>lundi</jour>
<heure_debut>14h00</heure_debut>
<heure_fin>15h00</heure_fin>
<duree>2</duree>
</when>
<where>
<lieu>D001-003,I224(X)</lieu>
</where>
<what>
<matiere>JAVA</matiere>
<type_cours>TP</type_cours>
</what>
<who>
<participants>311</participants>
<enseignants>FOURNIER JP</enseignants>
</who>
<others>
<description></description>
</others>
</cours>
</edt>
---------------------------------------------------------------------------------------
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fn="http://www.w3.org/2004/xpath-functions"
xmlns:xdt="http://www.w3.org/2004/07/xpath-datatypes">
<xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Agenda</title>
<style type="text/css">
td{text-align:center;}
#table_cours{background:#FF9966; font-family:Verdana, Arial, Helvetica, sans-serif; font:bold;}
#cours{font-family:Arial, Helvetica, sans-serif; font-size:16px; font:large; color:#000099}
#qui{font-family:Arial, Helvetica, sans-serif; font-size:12px; color:#999999}
#ou{font-family:Georgia, "Times New Roman", Times, serif; font-size:10px; font:oblique;}
</style>
</head>
<body>
<div align="center">
<h1>Agenda du groupe <xsl:value-of select="edt/cours/who/participants"/></h1>
</div>
<div align="center">
<table id="table_cours" border="2">
<tr>
<td></td>
<td><h1>Lundi</h1></td>
<td><h1>Mardi</h1></td>
<td><h1>Mercredi</h1></td>
<td><h1>Jeudi</h1></td>
<td><h1>Vendredi</h1></td>
<td><h1>Samedi</h1></td>
<td><h1>Dimanche</h1></td>
</tr>
<tr>
<td>8h00</td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<xsl:variable name="dur" select="when/duree"/>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
<td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<table>
<tr>
<td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td>
</tr>
<tr>
<td id="qui"><xsl:value-of select="who/enseignants"/></td>
</tr>
<tr>
<td id="ou"><xsl:value-of select="where/lieu"/></td>
</tr>
</table>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
</td>
<!-- pareil mais pour tous les autres jours de la semaine -->
<!--
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'mardi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'mercredi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'jeudi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each
select="edt/cours"><xsl:if test="when/jour = 'vendredi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'samedi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'dimanche'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
-->
</tr>
</table>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
------------------------------------------------
Voila désolé pour le code, je ne l'ai pas indenté correctement, mais je pense que la premiere ligne est visible.
Merci de votre aide
<?xml-stylesheet href="./style.xsl" type="text/xsl"?>
<!DOCTYPE edt SYSTEM 'groupes.dtd'>
<edt>
<cours>
<when>
<periode_debut>25/01/2007</periode_debut>
<periode_fin>22/03/2007</periode_fin>
<jour>lundi</jour>
<heure_debut>08h00</heure_debut>
<heure_fin>10h00</heure_fin>
<duree>2</duree>
</when>
<where>
<lieu>D001-003,I224(X)</lieu>
</where>
<what>
<matiere>Gestion</matiere>
<type_cours>TP</type_cours>
</what>
<who>
<participants>311</participants>
<enseignants>CARNOHAN Elisabeth</enseignants>
</who>
<others>
<description></description>
</others>
</cours>
<cours>
<when>
<periode_debut>25/01/2007</periode_debut>
<periode_fin>22/03/2007</periode_fin>
<jour>lundi</jour>
<heure_debut>14h00</heure_debut>
<heure_fin>15h00</heure_fin>
<duree>2</duree>
</when>
<where>
<lieu>D001-003,I224(X)</lieu>
</where>
<what>
<matiere>JAVA</matiere>
<type_cours>TP</type_cours>
</what>
<who>
<participants>311</participants>
<enseignants>FOURNIER JP</enseignants>
</who>
<others>
<description></description>
</others>
</cours>
</edt>
---------------------------------------------------------------------------------------
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fn="http://www.w3.org/2004/xpath-functions"
xmlns:xdt="http://www.w3.org/2004/07/xpath-datatypes">
<xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Agenda</title>
<style type="text/css">
td{text-align:center;}
#table_cours{background:#FF9966; font-family:Verdana, Arial, Helvetica, sans-serif; font:bold;}
#cours{font-family:Arial, Helvetica, sans-serif; font-size:16px; font:large; color:#000099}
#qui{font-family:Arial, Helvetica, sans-serif; font-size:12px; color:#999999}
#ou{font-family:Georgia, "Times New Roman", Times, serif; font-size:10px; font:oblique;}
</style>
</head>
<body>
<div align="center">
<h1>Agenda du groupe <xsl:value-of select="edt/cours/who/participants"/></h1>
</div>
<div align="center">
<table id="table_cours" border="2">
<tr>
<td></td>
<td><h1>Lundi</h1></td>
<td><h1>Mardi</h1></td>
<td><h1>Mercredi</h1></td>
<td><h1>Jeudi</h1></td>
<td><h1>Vendredi</h1></td>
<td><h1>Samedi</h1></td>
<td><h1>Dimanche</h1></td>
</tr>
<tr>
<td>8h00</td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<xsl:variable name="dur" select="when/duree"/>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
<td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<table>
<tr>
<td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td>
</tr>
<tr>
<td id="qui"><xsl:value-of select="who/enseignants"/></td>
</tr>
<tr>
<td id="ou"><xsl:value-of select="where/lieu"/></td>
</tr>
</table>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
</td>
<!-- pareil mais pour tous les autres jours de la semaine -->
<!--
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'mardi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'mercredi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'jeudi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each
select="edt/cours"><xsl:if test="when/jour = 'vendredi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'samedi'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
<td><xsl:for-each select="edt/cours"><xsl:if test="when/jour = 'dimanche'"><xsl:choose><xsl:when test="when/heure_debut = '08h00'"><table><tr><td id="cours"><xsl:value-of select="what/type_cours"/> - <xsl:value-of select="what/matiere"/></td></tr><tr><td id="qui"><xsl:value-of select="who/enseignants"/></td></tr><tr><td id="ou"><xsl:value-of select="where/lieu"/></td></tr></table></xsl:when></xsl:choose></xsl:if></xsl:for-each></td>
-->
</tr>
</table>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
------------------------------------------------
Voila désolé pour le code, je ne l'ai pas indenté correctement, mais je pense que la premiere ligne est visible.
Merci de votre aide
désolé j'ai oublié que pour continuer mon developpement, que j'avais retirais la partie embetante qui est :
...
<td>8h00</td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<xsl:variable name="dur" select="when/duree"/>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
<td rowspan="{$dur}">
...
Merci
...
<td>8h00</td>
<xsl:for-each select="edt/cours">
<xsl:if test="when/jour = 'lundi'">
<xsl:choose>
<xsl:when test="when/heure_debut = '08h00'">
<xsl:variable name="dur" select="when/duree"/>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:for-each>
<td rowspan="{$dur}">
...
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question