Mardi 29 juin 2010 — Dernier ajout jeudi 1er juillet 2010

Allons plus loin dans les boucles

Retour Sommaire

En cas de résultat vide

Nous avons vu comment afficher les informations d’une boucle, comment trier les résultats avec les critères, comment traiter les résultats pour changer/modifier leur contenu avec les filtres.

Mais si il n’y a aucun résultat ?

Dans notre cas si il n’y a aucun résultat, cela enverra une simple <ul></ul> à notre visiteur. Afin de ne pas afficher ce qui contient les éventuels résultats au cas ou il n’y a pas de résultat nous allons utiliser ce code :

<B_NomDeLaBoucle>
<ul>
<BOUCLE_NomDeLaBoucle(RUBRIQUES){racine}{par num titre}>
       <li><a href="#URL_RUBRIQUE">[(#TITRE|supprimer_numero)]</a></li>
</BOUCLE_NomDeLaBoucle>
</ul>
</B_NomDeLaBoucle>

Nous avons donc rajouté pour encadre les ligne <B_NomDeLaBoucle> et </B_NomDeLaBoucle>.

Cela nous permet donc d’encadrer le code qui sera à afficher autour des boucle si ces dernières retournent des résultats.

D’accord mais si je veux afficher un message à la place de rien ?

Et bien c’est dans le même principe. Si je veux afficher autre chose si il n’y a pas de résultat il me faudra encadrer ce quelque chose par le </B_NomDeLaBoucle> qui encadre les boucle et <//B_NomDeLaBoucle>. Vous pouvez ainsi afficher ce que vous voulez en cas de non résultats, même une boucle !

Le même principe peut s’appliquer aux Balises

Dans le cadre de l’affichage d’un article, nous voulons afficher le titre, le chapeau, et le texte de l’article ou afficher un message si l’article n’existe pas. Voici donc un code qui permet cela :

<B_article>
<div id="article">
<BOUCLE_article(ARTILCES){id_article}>
        <h1>[(#TITRE|supprimer_numero)]</h1>
        <div class="chapo">
                #CHAPO
        </div>
        <div class="texte">
                #TEXTE
        </div>
</BOUCLE_article>
</div>
</B_article>
        Désolé il n'y aucun article correspondant à ce numéro.
<//B_article>

Il n’est normalement pas nécessaire de commenter ce code puisque qu’il n’y à rien de nouveau.

Mais voilà, si par exemple un rédacteur n’a pas entré de chapeau dans son article, le code HTML <div id="chapo"></div> s’affichera quand même. Pour remédier à ce problème nous allons utiliser la même technique que dans la partie précédente mais spécifique aux Balises.

<B_article>
<div id="article">
<BOUCLE_article(ARTICLES){id_article}>
        <h1>[(#TITRE|supprimer_numero)]</h1>
        [<div class="chapo">
                (#CHAPO)
        </div>]
        <div class="texte">
                #TEXTE
        </div>
</BOUCLE_article>
</div>
</B_article>
        Désolé il n'y aucun article correspondant à ce numéro.
<//B_article>

Qu’est-ce qui a changé ?

Et bien c’est très simple, nous avons encadré la balise avec des parenthèses, puis nous avons encadré le code à afficher, si la balise contient quelque chose, avec des crochets. Cela permet donc de n’afficher le div du chapeau que si le chapeau a été complété par le rédacteur.

Retour Sommaire