Развитие сайта » Новая система учета просмотров
«23
Артём Григорьев
июн 2009
Сейчас так:
<pre>
<?
$counter = 0;
$req_topic = mysql_qw('SELECT * FROM `pipe_forum_topics` WHERE `partid`=? ORDER BY `id` DESC', $part['id']);
while($topic = mysql_fetch_assoc($req_topic)) {
$isorange = 0;
if(!$topic['closed'])
$isorange = accessTest()
&& (lastmsg("topic", $topic['id']) > lastvisit("topic", $topic['id'], userid()));

if($isorange || ($counter < 5)) {
$bbcolor = "EEEEEE";
if($isorange) {
$bbcolor = "FFCC00";
}

$count_msgs = mysql_result(mysql_qw('SELECT COUNT(*) FROM `pipe_forum_messages` WHERE `topicid`=?',
$topic['id']), 0, 0);

?>
<li style="color: #<?=$bbcolor?>; margin-bottom: 3px;">
<a href="/forum/part<?=$part['id']?>/topic<?=$topic['id']?>/">
<?=$topic['title']?>
</a>
<small style="color: #999999;">(<?=$count_msgs?>)</small>
</li>
<?
$counter++;
}
}
?>
</pre>

Отредактировано: 2009-06-14 22:28:22

Отредактировано: 2009-06-14 22:30:09

Отредактировано: 2009-06-14 22:31:20
Роман Домбровский
июн 2009
Всё равно на топик ссылается. Скидывай лучше эту инфу в форум.
Артём Григорьев
июн 2009
Не понял тебя...
Тима Данилов
июн 2009
Я счас наверно ступлю жутко...
А нельзя для каждого топика ввести булёвую переменную которая изначально true, а когда ты заходишь на топик делается false?..
А когда появляется новая месага делается true..


Отредактировано: 2009-06-15 08:31:07
Артём Григорьев
июн 2009
Вы чего-то недогоняете. Скрипт работает не больше нескольки секунд (и то редко), и все данные, которые были у него в качестве переменных нигде <u>сами</u> не сохраняются. Для хранения данных используются базы данных.
Так вот, тимино предложение с переменной, мачино с галочками абсолютно эквивалентно тому, что предложил я в самом начале.
Роман Домбровский
июн 2009
Вот в быстродействии я не особо смыслю, поэтому спорить не буду.
Тима Данилов
июн 2009
Я торможу по чёрному особенно сейчас.. А я не совсем понял: ты только описал старю, а предложение не объяснил..
Артём Григорьев
июн 2009
Она описана в первом сообщении топика =)
«23