Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | PHP-Fusion SF - Разное | Вопросы / Жалобы / Предложения
# 1 Тема: Вопрос и предложение по форуму
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 18 Апреля 2008, 10:52:26
А что, так функции Отметить все прочитанными так и не появилась???smiley


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 2  
pozitiv
SF Team

Avatar пользователя

паZитифф

SF Support Team

Почетный SF

Сообщений: 1676
Откуда: Киев
Зарегистрирован: 18 Ноября 2007, 18:49:13
Сказали спасибо 148 раз
Статус: offline
ICQ статус 3902393
Опубликовано 18 Апреля 2008, 13:12:26
Пока нет, но мне пришла в голову мысль как это сделать лучше...вскоре попробую реализовать(когда разберусь с трекером)


--------------------
wmz - Z226856101527
wmr - R513979829437

Все вопросы задавать на форуме. На вопросы заданные в приват или асю неотвечаю!
^ наверх ^ 3902393 http://nekto.me
# 3  
pozitiv
SF Team

Avatar пользователя

паZитифф

SF Support Team

Почетный SF

Сообщений: 1676
Откуда: Киев
Зарегистрирован: 18 Ноября 2007, 18:49:13
Сказали спасибо 148 раз
Статус: offline
ICQ статус 3902393
Опубликовано 26 Апреля 2008, 21:44:25
В общем идея такая...

создать новую таблицу и в ней 4 поля....

CREATE TABLE IF NOT EXISTS `rusfusion_forum_read_threads` (
`id` int(11) NOT NULL auto_increment,
`user_id` int(11) NOT NULL default '0',
`forum_id` int(11) NOT NULL default '0',
`thread_id` int(11) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `read` (`user_id`,`thread_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=6 ;

и при просмотре любой темы на форуме туда один раз будет записыватся id юзера id форума и id темы....
это гдето в начале страницы viewthread.php
if (iMEMBER) {
dbquery("INSERT INTO ".$db_prefix."forum_read_threads (id, user_id, forum_id, thread_id) VALUES ('', '".$userdata['user_id']."', '$forum_id', '$thread_id')");
}

далее в viewforum.php в цикл где формируется строка с информацией о теме добавляем

if (iMEMBER) {
$read_thread = dbarray(dbquery("SELECT * FROM ".$db_prefix."forum_read_threads WHERE user_id='".$userdata['user_id']."' AND forum_id='$forum_id' AND thread_id='".$data['thread_id']."'"));
}

делается 2 раза


ну и в тех же циклах когда мы выбираем какую картинку показывать

if ($data['thread_lastpost'] > $lastvisited) {
$folder = "<img src='".THEME."forum/foldernew.gif' alt='".$locale['560']."'>";
} else {
$folder = "<img src='".THEME."forum/folder.gif' alt='".$locale['561']."'>";
}

меняем на

if (!$read_thread) {
$folder = "<img src='".THEME."forum/foldernew.gif' alt='".$locale['560']."'>";
} else {
$folder = "<img src='".THEME."forum/folder.gif' alt='".$locale['561']."'>";
}

тоже два раза....

таким макаром для зарегистрированные пользователи будут видеть какие темы они посещали, а какие нет...тоесть будет уже отображать не темы которые обновлены за время вашего отсутствия на форуме, а темы которые вы нечитали...но этот мод(назовем так) требует большой доработки:
1. подфорумы
2. главная страница форума
3. что делать с гостями...(?)
здесь также надо выбирать какую картинку показывать в зависимости от прочитанных тем....

это я наметал за 10 минут....надеюсь профи помогут доработать чтобы все было без ошибок...


[Изменил(а) pozitiv, 26 Апреля 2008, 21:45:42]

--------------------
wmz - Z226856101527
wmr - R513979829437

Все вопросы задавать на форуме. На вопросы заданные в приват или асю неотвечаю!
^ наверх ^ 3902393 http://nekto.me
Перейти на форум:


95,171,469 уникальных посетителей
сейчас: 26 Апреля 2024, 21:45:39
Генерация страницы: 0.10 сек.