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

Bibliothèques et frameworks PHP Discussion :

[Smarty] Limité foreach aux 5 premiers resultats ?


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 135
    Points : 43
    Points
    43
    Par défaut [Smarty] Limité foreach aux 5 premiers resultats ?
    salut,

    j'utilise freeglobes et la fonction foreach pour afficher les sites les plus populaires.

    Comment faire pour n'afficher que les 5 premiers sites ?

    Fonction foreach dans freeglobes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <{foreach item=topsite from=$topsites}>
    <li><a href="<{$topsite.url}>" class="_blank"><{$topsite.name}></a></li>
    <{/foreach}>
    Merci

  2. #2
    Membre habitué
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2002
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2002
    Messages : 98
    Points : 169
    Points
    169
    Par défaut
    avec foreach je crois pas que ce soit possible

    par contre on peut le faire avec une section en mettant l'attribut max=5

  3. #3
    Membre chevronné
    Avatar de eric.pommereau
    Homme Profil pro
    Ingénieur, pôle cartographie
    Inscrit en
    Décembre 2004
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur, pôle cartographie
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2004
    Messages : 715
    Points : 1 790
    Points
    1 790
    Par défaut
    Bonjour,

    Même si je ne trouve pas cela très "propre" (normalement tu devrais sélectionner tes 5 éléments dans le script php) tu peux évaluer l'index de ta boucle avec if comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	<ul>
    	{foreach item=topsite from=$topsites name=top_5_sites}
    		{if $smarty.foreach.top_5_sites.index <= 5 }
    		<li><a href="{$topsite.url}" class="_blank">{$topsite.name}</a></li>
    		{/if}
    	{/foreach}
    	</ul>
    La contrainte est de nommer ta boucle (voir l'attribut name=...) pour accèder à l'index courant de la boucle.

    Aussi attention de ne pas écrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="<{$topsite.url}>">
    Mais bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="{$topsite.url}">


    Voilà en epérant avoir répondu à ta demande.

    @+

  4. #4
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 135
    Points : 43
    Points
    43
    Par défaut
    Merci cela marche mais avec ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <{foreach item=topsite from=$topsites name=top_5_sites}>
    		<{if $smarty.foreach.top_5_sites.index <= 5 }>
    		<li><a href="<{$topsite.url}>" class="_blank"><{$topsite.name}></a></li>
    		<{/if}>
    	<{/foreach}>

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

Discussions similaires

  1. limite cellule Excel pour inscrire resultat requete access
    Par moimemessssssssss dans le forum VBA Access
    Réponses: 0
    Dernier message: 17/08/2010, 22h31
  2. Delete enregistrements > aux x premiers
    Par arbi1 dans le forum Requêtes
    Réponses: 1
    Dernier message: 23/07/2010, 14h41
  3. limiter internet aux updates
    Par rupteur dans le forum Windows XP
    Réponses: 2
    Dernier message: 01/12/2008, 17h05
  4. [SQL] Limitation aux n premiers termes
    Par Amitom dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 17/04/2007, 08h48
  5. [xslt] Limiter un for-each aux x premiers éléments
    Par camboui dans le forum XSL/XSLT/XPATH
    Réponses: 13
    Dernier message: 18/11/2005, 16h09

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