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

Langage PHP Discussion :

construction menu avec sous catégorie


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut construction menu avec sous catégorie
    Bonjour je tente désespérément de construire mon menu.
    J'ai fais un menu qui s'auto construit avec un balisage très simple, mais une fois que je souhaite corsé le balisage la page est saccadé.
    Pour le moment j'ai ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $catId = 0;
    if(frontend_db_catalog::publicDbCatalog()->s_sub_category_menu_all_no_lang() != null){
    			foreach(frontend_db_catalog::publicDbCatalog()->s_sub_category_menu_all_no_lang() as $scat){
    					if($catId != $scat['idclc']) {
    						$wmenu .= '<ul class="personnal-side-list"><li><div><a href="'.'/c/'.$scat['pathclibelle'].'-'.$scat['idclc'].'.html'.'">'.$scat['clibelle'].'</a></div></li></ul>';
    						$catId = $scat['idclc'];
    					}
    					if($scat['idcls'] != null) {
    					$wmenu .= '<ul class="current_subcat">';
    					$wmenu .= '<li><a href="'.$scat['pathclibelle'].'-'.$scat['idclc'].'/s/'.$scat['pathslibelle'].'-'.$scat['idcls'].'.html'.'">'.$scat['slibelle'].'</a></li>';				
    					$wmenu .= '</ul>';
    					}
    			}
    		}
    En faites je souhaite construire un menu plus complexe en remplaçant cette source :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <div id="catalog-menu" class="block">
    <ul class="personnal-side-list">
    <li><div><a href="http://www.cms.dev/catalogue/c/mobilier-de-bureau-1.html">Mobilier de bureau</a></div></li>
    </ul>
    <ul class="personnal-side-list"><li><div><a href="http://www.cms.dev/catalogue/c/chaises-de-bureau-2.html">Chaises de bureau</a></div></li>
    </ul>
    <ul class="current_subcat">
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-de-direction-1.html">Chaises de direction</a></li>
    </ul>
    <ul class="current_subcat">
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-sympa-2.html">Chaises sympa</a></li>
    </ul>
    </div></div>
    J'aimerai mettre tous les <ul class="current_subcat"> en un seul par catégorie au lieux de dupliquer cette liste.
    Du genre ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <ul class="current_subcat">
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-de-direction-1.html">Chaises de direction</a></li>
    </ul>
    <ul class="current_subcat">
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-sympa-2.html">Chaises sympa</a></li>
    </ul>
    Deviendrai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <ul class="current_subcat">
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-de-direction-1.html">Chaises de direction</a></li>
    <li><a href="http://www.cms.dev/catalogue/chaises-de-bureau-2/s/chaises-sympa-2.html">Chaises sympa</a></li>
    </ul>
    J'ai retourné le truc dans tous les sens
    Au petit déjeuner, je prend du PHP et au souper du jQuery.
    AFUP 2009 : Bien optimiser son code pour le référencement
    Mon projet open source de librairie PHP 5: magix cjquery

  2. #2
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Salut

    Peut être comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    if ($catId != $scat['idclc']) {
    	$wmenu .= '<ul class="personnal-side-list"><li><div><a href="'.'/c/'.$scat['pathclibelle'].'-'.$scat['idclc'].'.html'.'">'.$scat['clibelle'].'</a></div></li></ul>';
    	$wmenu .= '<ul class="current_subcat">';
    }
     
    if ($catId == $scat['idcls'] && $scat['idcls'] != null) {
    	$wmenu .= '<li><a href="'.$scat['pathclibelle'].'-'.$scat['idclc'].'/s/'.$scat['pathslibelle'].'-'.$scat['idcls'].'.html'.'">'.$scat['slibelle'].'</a></li>';
    }
     
    if ($catId != $scat['idclc']) {
    	$wmenu .= '</ul>';
    	$catId = $scat['idclc'];
    }
    J'ai remarqué aussi que tu as 1 div de trop dans la 2ème partie de code, à la fin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <div id="catalog-menu" class="block">
    ... bla bla bla ...
    </div></div>
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  3. #3
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    La div en trop c'est pour une autre div plus haut que j'ai oublier de mentionner.
    sinon je viens de tester il met la deuxième sous catégorie en dehors du ul ce qui rend la page invalide
    Je cherche toujours comment faire mais la je sèche
    Au petit déjeuner, je prend du PHP et au souper du jQuery.
    AFUP 2009 : Bien optimiser son code pour le référencement
    Mon projet open source de librairie PHP 5: magix cjquery

Discussions similaires

  1. Menu avec sous-catégories
    Par arthuro45 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 16/09/2011, 13h36
  2. menu avec sous menu
    Par kate59 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 17/11/2008, 17h44
  3. [Joomla!] [Joomla 1.0] Menu avec sous-menus
    Par jakkihm dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 22/02/2008, 10h33
  4. Menu, avec sous menu et sous sous menu
    Par flolane dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 15/12/2006, 08h57

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