html - PHP, MYSQL - Create Multi Level Menu with Dynamic Link -
i need create multi-level menu (3 level @ least), succeed create menu can't figure how build link inside menu. code building multi-level menu
function menu_induk($array, $parents = array(),$induk_menu = 0) { $lparents = array(); if($induk_menu==0) { foreach ($array $element) { if (($element['induk_menu'] != 0) && !in_array($element['induk_menu'],$parents)) { $parents[] = $element['induk_menu']; } } } return $parents; } function bootstrap_menu($array,$class1 = "dropdown",$induk_menu = 0) { $array_parents = menu_induk($array); $array_parents_link = menu_induk_link($array); $menu_html = ''; foreach($array $element) { if($element['induk_menu']==$induk_menu) { if(in_array($element['id_menu'],$array_parents)) { $menu_html .= '<li class="'.$class1.'">'; $menu_html .= '<a href="'.base_url().$element['link'].'" class="dropdown-toggle" data-toggle="'.$class1.'" role="button" aria-expanded="false">'.$element['nama_menu'].' <span class="caret"></span></a>'; } else { $menu_html .= '<li>'; $menu_html .= '<a href="' . $element['link'] . '">' . $element['nama_menu'] . '</a>'; } if(in_array($element['id_menu'],$array_parents)) { $menu_html .= '<ul class="dropdown-menu" role="menu">'; $menu_html .= bootstrap_menu($array, "dropdown-submenu" , $element['id_menu'], $array_parents); $menu_html .= '</ul>'; } $menu_html .= '</li>'; } } return $menu_html; } the first function retrieve top level menu , second function create multilevel menu, question how build link in menu if hover on 3rd level menu it's base-link/first-level/second/third
here sql
create table `menu` ( `id_menu` int(10) not null, `nama_menu` varchar(40) default null, `link` varchar(50) not null, `induk_menu` int(5) default null, `is_root` tinyint(1) default null, `aktif` tinyint(1) default null ) engine=innodb default charset=latin1;
Comments
Post a Comment