IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSL -PHP] Test si vide... et première valeur inférieure


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut [XSL -PHP] Test si vide... et première valeur inférieure
    Bonjour,

    En parcourant le forum j'ai vu des sujets s'approchant de mon problème mais apparement pas tout à fait...
    Je m'explique je voudrais simplement tester si une valeur est vide ! mon code xml Et je test comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:when test="normalize-space(CD_Id) = text()">
    Cela ne fonctionne pas.

    Autre problème : je cherche à afficher la dernière valeur inférieure à l'heure en cours (format hh:mm:ss), pour l'instant le test et le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:when test="normalize-space(Timing) &gt;= '09:00:00'">
    Mais de une il ne fonctionne pas, et de deux comment faire pour le rendre dynamique... c'est à dire que xsl aille chercher l'heure en cours, bref comment passer un paramètre qui serait l'équivalent de date() en php !

    Je sais je me complique la vie ;oD, merci d'avance.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Un petit up pour ce sujet ou je coince...

  3. #3
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:when test="normalize-space(CD_Id) = '' ">

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Merci Erwy,

    Le code fonctionne surement mais hélas c'est à ce niveau que ça blocque :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:when test="normalize-space(Timing) &gt;= '09:00:00'">
    Tout est inclus dans ce when pour afficher la valeur correspondant à l'heure en cours au maximum...
    Il y a t il une fonction pour récupérer l'heure courante ?

  5. #5
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Xslt ne connait aucun format de date et heure, on peut comparer des nombres pas des chaines

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    normalize-space(Timing) &gt;= '09:00:00'
    impossible et xslt ne travaille que sur des document xml, si tu veux recuperer l'heure courantes pase la en parametre de tafeuilles

    pour le test un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    number(translate(normalize-space(Timing),':','')) &gt;= 090000
    pourrait marche

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    J'ai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <func:script language="php"> 
    <![CDATA[ 
    	function heure()
    	{
    	$heure = date(H:i:s);
    	return $heure;
    	}
    ]]> 
    </func:script> 
     
    <xsl:variable name="heure" select="heure()"/>
    Mais je ne suis pas sur de la syntaxe et surtout je ne suis pas sur de savoir appeler la variable !

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Quelqu'un connait-il le moyen de récupérer l'heure courante ?
    Le passage dans l'url n'est pas possible car le fichier est inclus par contre peut-être une variable php définie avant le fichier xml... Auquel cas comment la récupérer et l'utiliser dans le fichier xml ?

    Merci

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Voila ! J'ai enfin réussi a passer la valeur de l'heure courante dans le fichier xsl, par contre j'affiche pour controler les valeurs comme dites au paravant avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="number(translate(normalize-space(Timing),':',''))" />	<xsl:value-of select="$heure" />
    et le résultat est le suivant : ce qui semble signifier qu'il ne veut pas tranformer la valeur de Timing en nombre (cf NaN = "none a number" ?)... Que faire ?

Discussions similaires

  1. [AC-2003] test sur champ vide et nouvelle valeur
    Par Leehan dans le forum VBA Access
    Réponses: 3
    Dernier message: 05/03/2012, 12h19
  2. [Vxi] Test d'un indicateur avec valeur vide
    Par Unsurgent dans le forum Deski
    Réponses: 2
    Dernier message: 27/05/2011, 17h02
  3. test addition par rapport à la première valeur
    Par marie33000 dans le forum Macros et VBA Excel
    Réponses: 62
    Dernier message: 18/05/2009, 21h06
  4. [xml + xsl] détection d'élément vide
    Par tut dans le forum XSL/XSLT/XPATH
    Réponses: 20
    Dernier message: 11/05/2007, 10h44
  5. XML + XSL + PHP
    Par ZzZerf dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 21/03/2003, 15h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo