Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Outils > XMLRAD
XMLRAD Environnement de développement Web XML/XSL. Avant de poster -> F.A.Q XMLRAD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/08/2004, 18h55   #1
Membre régulier
 
Avatar de zozolh2
 
Inscription : avril 2003
Messages : 127
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2003
Messages : 127
Points : 74
Points : 74
Par défaut [ XML ][ XSL ] tri par date

bonjour,
je voudrais récupérer les noeuds dont la date est inférieur à une date_fin

voici mon code;
mais ca fonctionne pas au niveau du test...
une idée?

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<xsl:for-each select="INFORMATION">
        <!-- <xsl:sort select="DATE" order="descending" />-->
			<xsl:if test="DATE_LIMITE<='12/08/04'">
			<table width="335" border="0" cellpadding="0" cellspacing="0">
				<tr>					
					<td><font color="000080"><u><xsl:value-of select="TITRE" /></u></font></td>
					<td></td>
					<td align="right"><font color="000080"><i><xsl:value-of select="DATE" /></i></font></td>
				</tr>
				<tr colspan="3">
					<td><font color="000080"><xsl:apply-templates select="PARAGRAPHE" /></font></td>
				</tr>
				<tr>
					<td align="left"><font color="000080"><i><xsl:value-of select="AUTEUR" /></i></font></td>
					<td></td>
					<td align="right"><font color="000080"><i><xsl:value-of select="DATE_PREVISION" /></i></font></td>
				</tr>				
			</table>
			</xsl:if>					
         <br/>
      </xsl:for-each>
zozolh2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/08/2004, 23h45   #2
Membre éprouvé
 
Inscription : mars 2002
Messages : 516
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 516
Points : 483
Points : 483
Envoyer un message via MSN à Sylvain James
Le tri par date n'existe pas avec XSLT1.1, il faudra attendre XSLT 2 pour ça.
Tel que tu l'as écris, le processeur xsl se contente de faire une comparaison de la date en tant que chaine et non en tant que valeur date.
Il faut donc que tu effectues le tri en amont dans ta grappe XML.

Sylvain
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web

Mon Blog : http://blog.developpez.com/index.php?blog=89
Mes Articles : http://sjames.developpez.com/
Rubrique XMLRAD: http://xmlrad.developpez.com
Sylvain James est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2004, 08h48   #3
Membre régulier
 
Avatar de zozolh2
 
Inscription : avril 2003
Messages : 127
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2003
Messages : 127
Points : 74
Points : 74
dans ce cas, je trierai par numero d'information, car chaque info a un numero, mais je ne souhaiterais que avoir les 3 dernieres....comment je peux résoudre ce probleme et est ce possible?
zozolh2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2004, 09h13   #4
Membre habitué
 
Inscription : novembre 2002
Messages : 243
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 243
Points : 149
Points : 149
La grappe XML est-elle générée à partir d'une base de données ? si oui quelle base ?
Pierre FORAZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2004, 09h49   #5
Membre régulier
 
Avatar de zozolh2
 
Inscription : avril 2003
Messages : 127
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2003
Messages : 127
Points : 74
Points : 74
non elle est un fichier XML;
Code :
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
28
29
30
31
<JOURNAL>
 
 
 
 
 <INFORMATION ETAT="VISIBLE" NUMERO="1">
    <TITRE>un titre</TITRE>
    <DATE>13/04/04</DATE>
    <AUTEUR>ytutè</AUTEUR>
    <DATE_PREVISION>21/06/04</DATE_PREVISION>
    <DATE_LIMITE>22/06/04</DATE_LIMITE>
    <PARAGRAPHE>
      <TEXTE STYLE="ITALIQUE">toto a la plage</TEXTE>
      <LIEN>un lien</LIEN>
    </PARAGRAPHE>
  </INFORMATION>
 
  <INFORMATION ETAT="VISIBLE" NUMERO="2">
   <TITRE>un titre2</TITRE>
   <DATE>13/04/04</DATE>
   <AUTEUR>uiytuy</AUTEUR>
   <DATE_PREVISION>21/06/04</DATE_PREVISION>
   <DATE_LIMITE>22/06/04</DATE_LIMITE>
  <PARAGRAPHE>
    <TEXTE STYLE="NORMAL">toto a la plage</TEXTE>
    <TEXTE STYLE="GRAS">toto a la montagne</TEXTE>
    <TEXTE STYLE="ITALIQUE">toto sur une ile</TEXTE>
    <TEXTE STYLE="NORMAL">toto sur un avion</TEXTE>
    <LIEN>un lien</LIEN>
  </PARAGRAPHE>
 </INFORMATION>
zozolh2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2004, 10h04   #6
Membre habitué
 
Inscription : novembre 2002
Messages : 243
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 243
Points : 149
Points : 149
tu peux utliser les fonctionnalités xsl comme position() et count()[/code]
Pierre FORAZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2004, 10h19   #7
Membre régulier
 
Avatar de zozolh2
 
Inscription : avril 2003
Messages : 127
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2003
Messages : 127
Points : 74
Points : 74
merci!

j'ai fait comme ca :
<xsl:for-each select="INFORMATION[position()=last() or position()=last()-1 or position()=last()-2]">
zozolh2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h08.


 
 
 
 
Partenaires

Hébergement Web