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 :

[XSLT] Diviser un fichiers xml en plusieurs pages html


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut [XSLT] Diviser un fichiers xml en plusieurs pages html
    Bonjour,
    je sollicite votre aide en effet depuis quelques jours je recherche désespérement le moyen de créer plusieurs pages php en utilisant un fichier xsl pour transformer mon fichier xml avec DomXml.

    Je m'explique: je dispose d'un fichier xml volumineux contenant une centaine de résultats et j'aimerai afin d'éviter un temps de chargement trop long et pour faciliter la navigation , limiter l'affichage a 20 résultats par pages. Et créer, une sorte de menu: Pages: 1 - 2 -3 -4 qui me permettrai d'afficher par exemple sur la page 2, les resultats 20 à 40, sur la page 3 "40 à 60 " ...

    Donc si vous pouviez m'aider sa serait vraiment cool.
    Je vous remercie d'avance

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

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    pour créer une pagination, le plus simple est d'utiliser la fonction XPath position(). Concrètement :

    - tu passes en paramètre à la feuille de style le numéro de page visualisé
    - tu sélectionnes les noeuds à afficher en testant que leur position est dans la "fenêtre" à visualiser. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ...
    <xsl:param name="numPage"/>
    ...
    <xs:apply-templates select="//element-a-afficher[position() &lt;= $numPage * 10 and position() &gt;= ($numPage - 1) * 10 + 1]"/>

  3. #3
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Merci
    Merci pour la rapidité de la réponse, je pense pouvoir développez ma pagination avec ton aide et ce que j'avais collectionner durant mes recherches.

  4. #4
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Probléme pour les liens
    Bonjour, en suivant le conseil de Grandfather, j'ai réussi à limiter les résultats, néamoins losque que je veux créer un lien vers la page suivant ce la ne marche pas.
    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
       <xsl:element name="a">
                          <xsl:attribute name="href">?numPage=<xsl:value-of select="$numPage+1"/></xsl:attribute>
                          <xsl:attribute name="target">_parent</xsl:attribute>
                          <xsl:attribute name="class">TITREVALEUR2</xsl:attribute>
                          <b><span class="TITREVALEUR2">Suivant</span></b>
                      </xsl:element>
    En effet, je clique et les résultats sont toujours les même alors quand je change manuellement la valeur de $numPage dans le xsl cela fonctionne .

    Merci d'avance

  5. #5
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Re probéleme liens
    Sa doit être un truc tout con pour faire en sorte qu'en cliquant sur "Suivant" , j'affiche "numPage + 1" à chaque fois mais j'y arrive pas.

    Donc si quelqu'un peut m'aider en me disant par quel moyens je peux passer aux 20 résultats suivant sa serait vraiment cool.

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

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Le problème ne viendrait-il pas du code PHP qui transmet le paramètre "numPage" à la page XSL ?

  7. #7
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Vous avez raison, probablement, le probléme doit venir du php, j'utilise dom xml pour parser mon fichier et je sais pas si cela est possible de passer des parametre avec ce processeur, je sais que sablotron le permet.
    Avez vous des infos sur les capacités de dom xml a passer des variables?

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

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Il suffit de passer un tableau associatif (paire "nom" -> "valeur") à la méthode process. Voir la doc.

  9. #9
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Super les conseils sa marche impec

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fichier XML caché dans page HTML
    Par olysmar2 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 15/05/2014, 11h42
  2. Diviser un fichier XML en plusieurs fichiers XML avec XSLT
    Par bobkorn dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 18/04/2008, 12h13
  3. integrer un fichier xml dans une page html
    Par fantazya_z dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 23/06/2007, 13h00
  4. [XSLT] transfo d'un fichier XML en plusieurs fichiers XML
    Par doudou_rennes dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 28/11/2006, 12h01
  5. [XML - XSLT] Plusieurs xslt pour un fichier xml
    Par Laure888 dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 17/03/2006, 15h16

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