Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Форум на perl - первые проблемы. 25.08.04 10:19 Число просмотров: 3001
Автор: n0xi0uzz <Черкасов Виктор> Статус: Member
|
Начал писать свой форум на перл. Естественно, по ходу возникает очень много вопросов и проблем. Что-то пытаюсь решить сам, но возникают такие проблемы, решение которых я сам найти не могу.
Вот первый из них:
При открытии топа из раздела, выводятся сообщения в этом топе. Проблема в следующем - я не могу сделать так, чтобы сообщения выводились с первого до последнего (т.е. первое - самое верхнее, последнее - самое нижнее), как принято во многих форумах, в данный момент сообщения выводятся наоборот. Ниже даю код и надеюсь на вашу помощь:
if (($sect ne "") and ($id ne ""))
{
open $AT, "sections/$sect/$id.top";
@ATtheme = <$AT>;
close $AT;
for ($AT1= 0; $AT1< @ATtheme; $AT1++)
{
@ATtheme1[$AT1]= @ATtheme[@ATtheme- $AT1- 1];
}
#постраничный вывод:
$ATpages= int((@ATtheme- 1)/ 10);
$Tpage= 0 if ($Tpage< 0) or ($Tpage> $ATpages) or ($Tpage ne int($Tpage));
print "<tr><td><center>\n";
if ($ATpages> 0)
{
print "Страницы: ";
for ($ATtemp= 0; $ATtemp<= $ATpages; $ATtemp++)
{
print "<A href=?sect=$sect&id=$id&Tpage=".$ATtemp.">".($ATtemp+ 1)."</A> " if ($Tpage ne $ATtemp);
print "".($ATtemp+ 1)."\n" if ($Tpage eq $ATtemp);
}
}
print "<br><a href=forum.pl?sect=$sect>Назад в раздел</a></center></td></tr>";
#
for ($i= $Tpage* 10; ($i< ($Tpage+ 1)* 10) and (@ATtheme1[$i]); $i++)
{
($ATaut, $ATTheme, $ATmsg, $ATtime) = split(/;;;;;/, @ATtheme1[$i]);
#Вывод непосредственно, сообщения ;)
print "<tr><td><table align=center width=65%><tr><td>автор: $ATaut<br>Тема сообщения:$ATTheme<br>сообщение добавлено $ATtime</td></tr><tr><td>$ATmsg</td></tr></table></td></tr>";
}
}
|
- Форум на perl - первые проблемы. - n0xi0uzz 25.08.04 10:19 [3001]
|
|
|