[XSL] gestion de dates, date plus petite qu'une autre.
Bonjour,
J'ai un fichier XML avec des éléments datés au format standard :
Code:
<element date="2005-01-20T15:28:00/>
Et je souhaite utiliser ces dates dans ma feuille xslt.
J'ai réussi à trier mes éléments par date
Code:
1 2 3 4
| <xsl:for-each select="element">
<xsl:sort select="@date"/>
[...]
<xsl:for-each> |
c'est logique : il trie les dates comme des chaines de caractère.
Mais je n'ai pas réussi à faire des test de comparaison entre deux dates :
Code:
<xsl:if test="$date < $datefin">
où date et datefin on été correctement affectée des bonnes chaines de caractère.
Le test d'égalité entre deux string marche bien, mais pas celui d'inégalité...
Je n'ai pas réussi à comprendre dans la doc Xpath si c'était normal ou pas.
Comme j'aimerais faire d'autres truc sur les dates (par exemple, connaitre le jour de la semaine correspondant) je me suis renseignée sur les extension exslt, mais je n'ai pas réussit à importer le module date :
Code:
1 2 3 4 5 6
| <xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times"
extension-element-prefixes="date">
<xsl:import href="date.xsl" /> |
Quand j'exécute la page, ce code me retourne l'erreur suivante :
Citation:
Envoyé par FireFox
Warning: XSLTProcessor::importStylesheet() [function.importStylesheet]: I/O warning : failed to load external entity "file:///c%3A/wamp/www/forums_xml/php/XML/date.xsl" in c:\wamp\www\forums_xml\php\index.php on line 171
Logique, s'il ne cherche qu'a la racine de mon site, qu'il ne trouve pas "date.xsl" ...
Faut-il décompresser le date.zip disponible sur le site à l'endroit du projet? Vu tout ce qu'il y a dans ce date.zip, j'ai préféré m'abstenir...
Je suis preneuse de toute solutions :
- solution à la main (j'ai déja une fonctions qui me formate mes dates avec des substring : 2005-01-20T15:28:00 devient 20 janvier 2005 15:28 ), je me sens bien pour faire plus compliqué, mais pas non plus de fabriquer un tank pour enfoncer un clou... (et je suis un peu débutante, quand même, en xslt)
- solution intégrant une extention (si vous voulez bien m'expliquer comment faire marcher une exension.)
Merci d'avance pour vos éclairages.
Caille Rotie.