Bonjour ,
J'aimerai afficher le menu de mon site web à partir d'une bd mysql , sous codeigniter ,en respectant MVC et aussi le code html dans ma vue j'ai trouvé une fonction recursive en PHP/MYSQLMon code HTML :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 function affich_menu($parent_id=0){ $query = "SELECT ID, Parent_id, Nom FROM categorie ORDER BY Nom ASC"; if(mysql_num_rows($query)>0){ echo "<ul>"; while ($row = mysql_fetch_array($query)) { echo "<li>".$row['id']."".$row['category_title_fr']; affich_menu($row['id']); echo "</li>"; } echo "<ul>"; } }
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <ul class="menu-top"> <li><a href="#" class="menu-button"> <span class="menu-label">Home</span></a></li> <li><a href="#" class="menu-button menu-drop"><span class="menu-label">jeunesse</span></a> <div class="menu-dropdown menu-dropdown1"><ul class="menu-sub"> <li> <a href="#" class="menu-subbutton"><span class="menu-label">Journal</span></a></li> <li><a href="#" class="menu-subbutton"><span class="menu-label">Culture</span></a></li> <li><a href="#" class="menu-subbutton"><span class="menu-label">Jeunesse</span></a></li> <li><a href="#" class="menu-subbutton"><span class="menu-label">Sport</span></a></li> <li><a href="#" class="menu-subbutton"><span class="menu-label">Film</span></a></li> </ul></div></li> <li class="active"><a href="#" class="menu-button menu-drop"><span class="menu-label">Divers</span></a> </li> <li><a href="#" class="menu-button menu-drop"><span class="menu-label">Culture</span></a> </li> <li><a href="#" class="menu-button menu-drop"> <span class="menu-label">Journal</span></a> </li> <li><a href="#" class="menu-button menu-drop"> <span class="menu-label">Film</span></a> </li> </li></ul></div>
Comment faire pour créer une fonction récursive dans mon controleur tout en respectant ce qui est ma vue ?? un menu multi niveaux pour chaque niveau un affichage specifique .
Merci d'avance pour votre aide .
Partager