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 :

bleme requette Xpath... le retour


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 8
    Par défaut bleme requette Xpath... le retour
    bonjour,

    toujours un probleme avec mon moteur de recherche... lors d'une requette du type

    "residential/bien[genre_bien='"+monBien+"' and secteur_bien='"+monSecteur+"']";

    ou monBien et monSecteur sont des variables.

    tous va bien si on a selectionné monBien et monSecteur, mais j'arrive a définir si un seul des deux est utilisé... genre monSecteur n'as pas de parametre est je voudrais tous les selectionner, j'ai essayé un peu comme * en Mysql

    voili, cimer

    jean guy

  2. #2
    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 : 48
    Localisation : France

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Par défaut
    si un seul des deux utilise sa ressemble a un "ou"

    precise ta question

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 8
    Par défaut
    c vré que c t pas klair qaund je relis...

    donc mon moteur aura plusieurs champs (des combo box). ici il y en a que 2 : genre_bien et secteur_bien

    je recupere leur valeur pour les afficher leurs résultats

    c bien des et (et pas ou) et ds le cas
    "residential/bien[genre_bien='"+monBien+"' and secteur_bien='"+monSecteur+"']";

    ca marche nickel, si l'utilisateur selectionne avec les combo box

    maintenant, j'aimerais que si l'utilisateur ne choisisse qu'un champ, par exemple genre_bien, l'autre secteur_bien n'ai pas de valeur précise mais prenne toutes les valeurs...

    genre ca donnerait ca, si ca marchait comme * en Mysql

    "residential/bien[genre_bien='Appartement' and secteur_bien='*']";

    mais je touve pas ce qu'il faut mettre a la place de l'etoile en Xpath

    j'espere avoir été un peu plus klair...

  4. #4
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Bonjour,
    mais je touve pas ce qu'il faut mettre a la place de l'etoile en Xpath
    Il n'y a pas d'équivalent de l'étoile SQL en XPath. Tu es obligé de tester la présence d'une seule ou des deux variables.
    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
    <xsl:choose>
      <xsl:when test="$genre_bien != '' and $secteur_bien != ''">
        <xsl:apply-templates select="residential/bien[genre_bien = $genre_bien and secteur = $secteur_bien]"/>
      </xsl:when>
      <xsl:when test="$genre_bien != ''">
        <xsl:apply-templates select="residential/bien[genre_bien = $genre_bien]"/>
      </xsl:when>
      <xsl:when test="$secteur_bien != ''">
        <xsl:apply-templates select="residential/bien[secteur = $secteur_bien]"/>
      </xsl:when>
      <xsl:otherwise>
        <!-- cas où $genre_bien et $secteur_bien sont vides -->
        <xsl:apply-templates select="residential/bien"/>
      </xsl:otherwise>
    </xsl:choose>
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 8
    Par défaut
    okay merci...

    ca passe pour 2 champs, mais c vrai que des qu'il y en a plus ca devient ingérable

  6. #6
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Effectivement, ca devient vite ingérable. Mais dans ce cas, est-ce que XSLT est vraiment la meilleur solution ?

    Il vaut peut-être s'orienter vers une base de données SQL, dans ce cas (PostgreSQL, au hasard ... )
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. [ZF 1.7] [Débutant]Problème de retour de requette SQL
    Par ed502003 dans le forum Zend_Db
    Réponses: 2
    Dernier message: 09/04/2009, 09h12
  3. [XP] Retour d'experience
    Par virgile04 dans le forum Méthodes Agiles
    Réponses: 10
    Dernier message: 22/10/2002, 08h25
  4. Retour chariot dans un TMemo ?
    Par Vincent PETIT dans le forum C++Builder
    Réponses: 7
    Dernier message: 27/08/2002, 18h55
  5. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47

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