Mise en place du menu de navigation

Attention, depuis PHP 5.5.0, certaines extensions SQL sans doute utilisées dans ce tutoriel peuvent être obsolètes et seront supprimées dans le futur, vous devez donc adapter les codes! Exemples ici.
L'objectif est simple...afficher les catégories dans le menu et comme j'aime bien me prendre la tête pour pas grand chose , on va afficher le nombre d'article dans chaque catégorie au survol de la souris.
<div class="cadredumenudroite">
<!--Code ici-->
</div>
Dans un premier temps on sélectionne les catégories et si il y a quelque chose à afficher, on construit le début du menu :
<?php
//On sélectionne les données pour afficher les catégories
$result = mysql_query("SELECT id,nom_categorie,titre_rewrite FROM CATEGORIES ORDER BY id ASC");
//si il y a quelque chose
if(mysql_num_rows($result) != 0)
{
    echo '<span class="titre-menu">Catégories</span><ul>';
    while($affiche = mysql_fetch_array($result))
    {
On compte ensuite le nombre d'article dans chaque catégorie :
        //On calcul le nombre d'article dans chaque catégorie
        $result1 = mysql_query("SELECT id_categorie FROM CONTENU WHERE id_categorie=".$affiche['id']." AND valide = 'oui'");
        $total = mysql_num_rows($result1);
On met au singulier ou au pluriel selon le nombre d'article trouvé dans chaque catégorie :
        if($total>1)
        {
        $pluriel="articles";
        }
        else
        {
        $pluriel="article";
        }
On affiche les résultats puis on referme tout :
        echo '<li><a class="menu" title="'.$affiche['nom_categorie'].'" href="http://'.$_SERVER['HTTP_HOST'].'/'.$affiche['titre_rewrite'].'/"><strong>'.$affiche['nom_categorie'].'</strong><span>['.$total.' '.$pluriel.']</span></a></li>';
    }
    echo '</ul>';
}
?>
Dans les liens générés, on utilise la class CSS "menu" qui associé à la balise "span" permet d'afficher au survol de la catégorie le nombre d'article. Si vous êtes curieux, reportez-vous dans le fichier "style.css" pour comprendre comment ça fonctionne. 
Voir/déposer un commentaire (0) | Signaler un problème