Witam, mam pewien problem z logicznym rozwiązaniem sprawy generowania drzewa listy. Bazę danych odpytuję takim zapytaniem:
SELECT `id`,`txt`,`parent_id` FROM `baza`;
id - unikalne ID wpisu/rekordu z listy
parent_id - ID wpisu z jednego poziomu powyżej
Chciałbym wygenerować listę, która mogłaby wyglądać w ten przykładowy sposób:
- tekst 1
- tekst 2
- tekst 3
-- tekst 3,1
-- tekst 3,2
--- tekst 3,2,1
--- tekst 3,2,2
-- tekst 3,3
--- tekst 3,3,1
--- tekst 3,3,2 - tekst 4
- tekst 5
itd... mam nadzieję, że w miarę zrozumiale to przedstawiłem, w razie czego użyję innego schematu. Cyfry dodałem tylko dla lepszego zobrazowania sprawy.
Problem w tym, że nie wiem jak zapytania z bazy posegregować i na początek utworzyć z nich tablicę, która przedstawi np. przy pomocy print_r takowy schemat (nie chodzi o konkretny zapis graficzny).
Zawartość bazy:
1|tekst|0
2|tekst|0
3|tekst|0
4|tekst|0
5|tekst|0
6|tekst|3
7|tekst|3
8|tekst|3
9|tekst|7
10|tekst|7
11|tekst|8
12|tekst|8
Właściwie nie chodzi mi o żaden gotowy kod, ale o samą wskazówkę jak logicznie tą sprawę rozwiązać... myślałem o tablicach, potem o odczycie tablic przez while+list+each, ale kompletnie nie potrafię tego ogarnąć, bardzo więc proszę o pomoc.
Pozdrawiam.