Autor Zpráva
xfish5
Profil
Ahoj,
pro výpis stromu používám 3, respektive 4 pole. Popíši je:
1) $childs_replies[id] = id_parent;
2) $childs_replies_text[id] = Titulek v seznamu;
3) $childs_count[$id] = Pocet;

4) $gfx[id] = Grafika;

Hlavní komentáře vypisuji hned a pokud je na daný hlavní komentář odpověd(i), volám rekurzivní fci, která zobrazí odpovědi na daný komentář. Do pole to ukládám pro úsporu SQL dotazů. Mohl by mě prosím někdo "nakopnout", jak na danou rekurzivní fci, která z daných polí (první tři) jen vypíše (nestrukturovaně) pod každý komentář(hlavní) jeho odpovědi? Jen jěště dodám, že fce má 2 parametry($id_parent a $uroven).

Díky za rady!
igamenir
Profil
function WriteReplies ($id_parent, $uroven) {

for ($id = 0, $childs = 0; $childs < $childs_count[$id_parent]; $id++)
if ($childs_replies[$id] == $id_parent):
echo $childs_replies_text[$id];
WriteReplies($id, $uroven + 1);
$childs++;
endif;
}

Pokud dobře chápu, k čemu ta pole jsou, tak by to mohlo být takhle
igamenir
Profil
Vidíte v mém kódu někdo chybu?
Přes ICQ sem se od xfish5 dozvěděl, že to na foru vyhazuje undefined index.
Může tohle upozornění hodit for, nebo je to tím polem?
xfish5
Profil
Podle mě bude chyba ve špatné vonání té fce, pokud má daný hlavní komentář další potomky(odpovědi). V těch polích jsou jen odpovědi, ne hlavní komentáře. Ale v tom bych už problém neviděl.

Děkuji igamenirovi za pomoc.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0