Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <div class="top-menu">
- <div class="top-menu-window">
- <?php
- if($stmt=$mysqli->prepare('SELECT `page_id`, `title`, `parent` FROM `content`')) {
- $stmt->execute();
- $stmt->bind_result($menu_id, $menu_title, $menu_parent);
- $menuitems = array ();
- while($stmt->fetch()) {
- $menuitems[] = array('page_id' => $menu_id, 'parent_id' => $menu_parent, 'title' => $menu_title);
- }
- $stmt->close();
- // PHP sorting
- $tmp = array(0 => array('title' => 'root', 'children'=>array()));
- foreach($menuitems as $item) {
- $tmp[$item['page_id']] = isset($tmp[$item['page_id']]) ? array_merge($tmp[$item['page_id']],$item) : $item;
- $tmp[$item['parent_id']]['children'][] =& $tmp[$item['page_id']];
- }
- // Make me a root
- $root = array($tmp[0]);
- // Recursive traversal
- function traverse($array){
- $str = '<ul>';
- foreach($array as $item) {
- $str .= '<li><a href="#">'.$item['title'].'</a>'.(isset($item['children'])&&$item['children']?traverse($item['children']):'').'</li>';
- }
- $str .= '</ul>';
- return $str;
- }
- //Output something
- echo traverse($root);
- }
- ?>
- </div>
- </div>
Advertisement
Add Comment
Please, Sign In to add comment