neco takovyho jsem uz resil, neni to sice primo kniha hostu, ale je to diskuze, kde kazda reakce na nejakej prispevek je trochu vic odsazena nez ten prispevek, na kterej reaguje (pokud to tak nechces, staci jednoducha uprava). pokusim se to co nejvic zjednodusit:
mam tabulku s nasledujici strukturou:
Kód:
CREATE TABLE diskuze
(
id INT AUTO_INCREMENT,
clanek INT NOT NULL, # cizi klic do tabulky clanky
reakce INT DEFAULT 0 NOT NULL,# klic do teto tabulky
nadpis VARCHAR (45),
obsah TEXT NOT NULL,
PRIMARY KEY (clanek,id)
);
a pak mam rekurzivni funkci pro vypis cely diskuze k jednomu clanku:
Kód:
function outputReplies($clanek,$replyTo,$curLevel)
{
// musi byt pripojeno k databazi!!!
$query = "SELECT id,nadpis,obsah FROM diskuze WHERE clanek=$clanek AND reakce=$replyTo";
$result = @mysql_query($query);
while (list($id,$nadpis,$obsah) = @mysql_fetch_array($result))
{
echo "<div style=\"margin-left: ".(50+$curLevel*20)." px;margin-right:50 px;\">$nadpis
$obsah
<a href=\"index.php?reply=$clanek&to=$id\">reaguj</a></div>
\n";
outputReplies($clanek,$id,$curLevel+1);
}
}
pouziti je jednoduchy:
Kód:
<?php outputReplies($idClanku,0,0)
snad ti to k necemu bude 
P.S. Snad sem to pri tom zjednodusovani neoklestil moc, kdyby to nefungovalo, rekni