$req = mysql_query("SELECT `forum`.`id`
FROM `forum` LEFT JOIN `cms_forum_rdm` ON `forum`.`id` = `cms_forum_rdm`.`topic_id` AND `cms_forum_rdm`.`user_id` = '" . $user_id .
"'
WHERE `forum`.`type`='t'
AND `cms_forum_rdm`.`topic_id` Is Null");
while ($res = mysql_fetch_array($req)) {
mysql_query("INSERT INTO `cms_forum_rdm` SET
`topic_id`='" . $res['id'] . "',
`user_id`='" . $user_id . "',
`time`='" . $realtime . "'");
}
$req = mysql_query("SELECT `forum`.`id` AS `id`
FROM `forum` LEFT JOIN `cms_forum_rdm` ON `forum`.`id` = `cms_forum_rdm`.`topic_id` AND `cms_forum_rdm`.`user_id` = '" . $user_id .
"'
WHERE `forum`.`type`='t'
AND `forum`.`time` > `cms_forum_rdm`.`time`");
while ($res = mysql_fetch_array($req)) {
mysql_query("UPDATE `cms_forum_rdm` SET `time`='" . $realtime . "' WHERE `topic_id`='" . $res['id'] . "' AND `user_id`='" . $user_id . "'");
}
$_SESSION['fnew'] = 0;
$_SESSION['fnewtime'] = time();
echo '<p>Все темы приняты как прочитанные</p>';
break;
case 'select' :
echo '<div class="phdr"><b>Показать за период</b></div>';
echo '<div class="menu"><p><form action="index.php?act=new&do=all" method="post">Период(в часах):<br/>';
echo '<input type="text" maxlength="3" name="vr" value="24" size="3"/>';
echo '<input type="hidden" name="act" value="all"/><input type="submit" name="submit" value="Показать"/></form></p></div>';
echo '<div class="phdr"><a href="index.php?act=new">Назад</a></div>';
break;судя по этому куску, дубликаты постов создаются для каждого.
только непонятно как-то.. Эт же какя нагрузка идёт. неее. Тут что-то не так
while ($res = mysql_fetch_array($req)) {
mysql_query("INSERT INTO `cms_forum_rdm` SET
`topic_id`='" . $res['id'] . "',
`user_id`='" . $user_id . "',
`time`='" . $realtime . "'");
}этот цикл создаёт мноооого таблиц для любого запустившего этот процесс юзверя, записывает ид прочитанных тем, ид пользователя и время. пипец сколько хлама в базе.. при тысячи пользователей и 1оооо тем, в таблице cms_forum_rdm будет 1о миллионов таблиц о_О