Witam
Stworzyłem sobie skrypt php pobierający z bazy danych drzewo (nested set) i wszystko ładnie się wyświetla przy użyciu twardych spacji lecz na potrzeby mojej strony chciałbym wyświetlić to w znacznikach
  1. <ul><li></li></ul>
. Niestedy nie potrafię tego zrobić.
skrypt php:
  1. public function categoriess($root,$menu){
  2. $sql = 'SELECT lft, rgt FROM categories WHERE title="'.$root.'"';
  3. $result = $this->Query($sql);
  4. $row = $result->fetch_object();
  5. $right = array();
  6. $sql2 = 'SELECT * FROM categories WHERE lft BETWEEN '.$row->lft.' AND '.$row->rgt.' ORDER BY lft ASC';
  7. $res = $this->Query($sql2);
  8. while ($rows = $res->fetch_object()) {
  9. if (count($right)>0) {
  10. while ($right[count($right)-1]<$rows->rgt) {
  11. array_pop($right);
  12. }
  13. }
  14. if($rows->active == 1){
  15. // echo '<ul>';
  16.  
  17. echo str_repeat('&nbsp;&nbsp;',count($right)).$rows->title.'<br />'; // chce osiągnąć taki efekt jak przy użyciu tej instrukcji jednak ma to być zrobione w <ul><li>
  18.  
  19. //echo '</ul>';
  20. }
  21. $right[] = $rows->rgt;
  22. }
  23.  
  24. }
  25.  

Kombinowałem już na wiele sposobów nawet przeszukiwałem neta i widziałem tutorial na php.pl odnośnie nested sets jednak nie było tam wyświetlania w takiej formie jak ptrzebuję:
  1. <ul><li>tytuł</li> <!-- jesli ma dzieci to: -->
  2. <ul><li>tytul dziecka</li>
  3. <li>drugie dziecko</li></ul>
  4. </ul>

Z góry dziękuję za wszelkie podpowiedzi jak rozwiązać mój problem
pozdrawiam