2014-02-02 6 views
-1

Так что результат должен выглядеть следующим образом:Уплотненный уль Li навигации

<ul> 
    <li><a href="url">Item 1</a></li> 
    <li><a href="url">Item 2</a> 
     <ul> 
      <li><a href="url">Subitem 1</a></li> 
      <li><a href="url">Subitem 2</a></li> 
     </ul> 
    </li> 
    <li><a href="url">Item 3</a></li> 
</ul> 

базы данных MySQL:

id | value  | url | parent 
---+-----------+-----+------- 
1 | Item 1 | 1 | 0 
2 | Item 2 | 2 | 0 
3 | Subitem 3 | 3 | 2 
4 | Subitem 4 | 4 | 2 
5 | Item 5 | 5 | 0 

И URL приходит из другой MySQL таблицы:

id | url 
---+---- 
1 | url 
2 | url 
3 | url 
4 | url 
5 | url 

Спасибо

+0

Что вы пробовали? Сначала попробуйте создать иерархию одной таблицы базы данных в качестве php-массива. Затем вы можете сосредоточиться на преобразовании этого во вложенный список с URL-адресами. – poke

ответ

0

Сначала получите строки, у которых нет родительского (wh ere parent = 0) и их петля

foreach($parents as $row) { 
echo '<li><a href="url">Item 2</a>'; 

//here get the items whose parent is $row['parent'] 
if(count($childs)>0) echo '<ul>'; 
foreach($childs as $child_row) { 
echo '<li><a href="url">Subitem 1</a></li>'; 
} 
if(count($childs)>0) echo '</ul>'; 
echo '</li>'; 
} 
Смежные вопросы