|
|
|
|
|
|
для: cheops
(17.06.2006 в 16:22)
| | $idp я беру из адресной строки
А как вызываю — не знаю. Я эту функцию у вас на форуме нашел. А как ее надо вызывать?
Я думал, за это отвечает строка функции
Если это не так — то простите мою темноту и подскажите, как надо. | |
|
|
|
|
|
|
|
для: SS
(17.06.2006 в 15:30)
| | Это определение функции, а как вы её вызывате - в каком контексте, откуда берёте параметр $idp? | |
|
|
|
|
|
|
|
для: cheops
(17.06.2006 в 13:21)
| | Вы шутите? Я уже два раза код приводил.
Вот весь кусок:
<?php
function catalogs($idp)
{
$result=mysql_query("SELECT * FROM posts WHERE parent_post = $idp");
if(!$result) exit(mysql_error());
while($r=mysql_fetch_array($result))
{
if($r['idp'] == $idp) $style = "<span style='margin-left : ".$r['level']."px; color: #CC0000'> ".$r['theme']."";
else $style = "<span style='margin-left : ".$r['level']."px; color: #FFFFFF'> <a href=read.htm?idt=".$r['idt']."&idp=".$r['idp'].">".$r['theme']."</a>";
echo "<b>$style <font color='#996666'>— ".$r['author']."</b></font><font color='#808080'> — ".$r['time']."</font></span>";
catalogs($r['idp']);
}
}
catalogs($idp);
}
?>
|
| |
|
|
|
|
|
|
|
для: SS
(17.06.2006 в 11:31)
| | Как вы вызываете функцию catalogs()?
PS Давайте перебираться в новую тему. | |
|
|
|
|
|
|
|
для: cheops
(17.06.2006 в 10:36)
| | Я не могу этого проверить, потому что, как писал выше:
2) показывает только посты, на которые есть ответы уровнем ниже, т.е. для такой схемы:
post1
.....post2
.....post3
..........post4
...............post5
если мы находимся на post1 - оттображается вся ветка, а если находимся на post2 - отображаются только:
..........post4
...............post5 | |
|
|
|
|
|
|
|
для: SS
(17.06.2006 в 01:33)
| | Тогда вам следует передавать два параметра: первый тот, что есть, а второй номер активного поста. Использовать рабочий параметр рекурсивного спуска в качестве маркера активного поста нельзя, так как он постоянно меняется на каждой итерации рекурсии. | |
|
|
|
|
|
|
|
для: cheops
(17.06.2006 в 00:47)
| | Активный пост — это то сообщение, которые мы смотрим в данный момент.
Т.е. интересует такой вид, как вот здесь: http://www.set.ru/srs/board/read.cgi?user=181&board=1&type=tree&start=0&topic=377&from=0&message=1956 | |
|
|
|
|
|
|
|
для: SS
(16.06.2006 в 22:04)
| | Активный пост это кто и как он действует? Т.е. всё что выше его не выводится? | |
|
|
|
|
|
|
|
для: cheops
(16.06.2006 в 15:20)
| | Хорошо. Как должна выглядеть функция? Сейчас она выглядит так:
<?php
function catalogs($idp)
{
$result=mysql_query("SELECT * FROM posts WHERE parent_post = $idp");
if(!$result) exit(mysql_error());
while($r=mysql_fetch_array($result))
{
if($r['idp'] == $idp) $style = "<span style='margin-left : ".$r['level']."px; color: #CC0000'> ".$r['theme']."";
else $style = "<span style='margin-left : ".$r['level']."px; color: #FFFFFF'> <a href=read.htm?idt=".$r['idt']."&idp=".$r['idp'].">".$r['theme']."</a>";
echo "<b>$style <font color='#996666'>— ".$r['author']."</b></font><font color='#808080'> — ".$r['time']."</font></span>";
catalogs($r['idp']);
}
}
catalogs($idp);
}
?>
|
в данный момент она:
1) не выделяет цветом активный пост;
2) показывает только посты, на которые есть ответы уровнем ниже, т.е. для такой схемы:
post1
.....post2
.....post3
..........post4
...............post5
если мы находимся на post1 - оттображается вся ветка, а если находимся на post2 - отображаются только:
..........post4
...............post5 | |
|
|
|
|