mysql - PHP recursive menu in HTML list structure -


here html structure how should like

<li><a href="#" class="menulink">dropdown one</a>     <ul>         <li><a href="#">navigation item 1</a></li>         <li>             <a href="#" class="sub">navigation item 2</a>             <ul>                 <li class="topline"><a href="#">navigation item 1</a></li>                 <li><a href="#">navigation item 2</a></li>             </ul>         </li>         <li>             <a href="#" class="sub">navigation item 3</a>             <ul>                 <li class="topline"><a href="#">navigation item 1</a></li>                 <li><a href="#">navigation item 2</a></li>                 <li>                     <a href="#" class="sub">navigation item 3</a>                     <ul>                         <li class="topline"><a href="#">navigation item 1</a></li>                         <li><a href="#">navigation item 2</a></li>                         <li><a href="#">navigation item 3</a></li>                      </ul>                 </li>                 <li><a href="#">navigation item 4</a></li>             </ul>         </li>         <li><a href="#">navigation item 4</a></li>         <li><a href="#">navigation item 5</a></li>     </ul> </li> <li><a href="#" class="menulink">dropdown two</a>     <ul>         <li><a href="#">navigation item 1</a></li>         <li><a href="#">navigation item 2</a></li>     </ul> </li> 

and here mysql table

id |parent_id|        name     | ---+---------+-----------------+  1 |    0    |dropdown 1     |  2 |    1    |navigation item 1|  3 |    1    |navigation item 2|  4 |    3    |navigation item 1|  5 |    3    |navigation item 2|  6 |    1    |navigation item 3|  7 |    6    |navigation item 1|  8 |    6    |navigation item 2|  9 |    6    |navigation item 3| 10 |    6    |navigation item 4| 11 |    1    |navigation item 4| 12 |    1    |navigation item 5| 13 |    0    |dropdown 2     | 14 |   13    |navigation item 1| 15 |   13    |navigation item 2| 

maybe not best approach here php function attempt:

function listcategory($parent_id,$level=0) {     $query = "select name, id , parent_id category   parent_id=".$parent_id;     $res = mysql_query($query) or die($query);     $i=1;     while (list ($name, $id) = mysql_fetch_row($res))     {            if ($level==0) {echo '<li><a href="#" class="menulink">'.$name.'</a></li>';}          echo '<li><a href="#" class="menulink">'.$name.'</a></li>';         //echo $name ." i: ".$i." level: ".$level."<br>";         $i++;         listcategory($id,$level+1);     } }  listcategory(0); 

thanks in advance

function listcategory($parent_id,$level=0) {     $query = "select name, id , parent_id category   parent_id=".$parent_id;     $res = mysql_query($query) or die($query);     if(mysql_num_rows($res) == 0) return;     echo '<ul>';     while (list ($name, $id) = mysql_fetch_row($res))     {            if ($level==0)         {            echo '<li><a href="#" class="menulink">'.$name.'</a>';         }         else         {            echo '<li><a href="#">'.$name.'</a>';         }         listcategory($id,$level+1);         echo '</li>';     }     echo '</ul>'; } 

Comments

Popular posts from this blog

c# - How to set Z index when using WPF DrawingContext? -

razor - Is this a bug in WebMatrix PageData? -

visual c++ - Using relative values in array sorting ( asm ) -