Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Новые сообщения, Как сделаны на форумах IPB/Phpbb/Vbulite 
:(
    Опции темы
Валерия
Дата 29.9.2008, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

Репутация: 3
Всего: 8



Собственно, есть рядом топик похожий, но тему не раскрыли.
Как на популярных движках форумов сделано, прочитаное ли это сообщение или нет?
Врятли для каждого пользователя вставляют кучу строк в мускул с айдишниками прочитанных.
PM MAIL   Вверх
MoLeX
Дата 30.9.2008, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Валерия, 
1. ваша тема точно не в Проф раздел.
2. у нас есть раздел посвященный про готовые решения
3. почему бы взять и не поглядеть на офф сайтах, по крайней мере для ИПБ много что расписано


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
lukas
Дата 30.9.2008, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 771
Регистрация: 23.2.2007

Репутация: 3
Всего: 15



Валерия, в куках хранится дата последнего посещения форума, и все темы которые созданы после этой даты являются не прочитанными.


--------------------
http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi.
PM MAIL WWW   Вверх
Валерия
Дата 30.9.2008, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

Репутация: 3
Всего: 8



Цитата(lukas @  30.9.2008,  09:04 Найти цитируемый пост)
Валерия, в куках хранится дата последнего посещения форума, и все темы которые созданы после этой даты являются не прочитанными.

Это не может быть так.
Потому что если я читаю темы через одну, то они помечаются как прочитанные.
Мне кажется что там и дата последнего посещения, и временная таблица где для твоего сеанса указывается читал ли ты эти сообщения или нет.
PM MAIL   Вверх
Boxa
Дата 30.9.2008, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 25.10.2006

Репутация: нет
Всего: -2



Цитата(Валерия @ 30.9.2008,  14:05)
Цитата(lukas @  30.9.2008,  09:04 Найти цитируемый пост)
Валерия, в куках хранится дата последнего посещения форума, и все темы которые созданы после этой даты являются не прочитанными.

Это не может быть так.
Потому что если я читаю темы через одну, то они помечаются как прочитанные.
Мне кажется что там и дата последнего посещения, и временная таблица где для твоего сеанса указывается читал ли ты эти сообщения или нет.

присоединюсь. Пишут, пишут, и будут писать  smile  IDU IDT... как только добавляется пост туда, то сносятся все поля, либо апдейтятся.

Это сообщение отредактировал(а) Boxa - 30.9.2008, 14:36
PM MAIL   Вверх
teroni
Дата 30.9.2008, 15:06 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

Репутация: 8
Всего: 22



А что, трудно самому в БД тех форумов заглянуть и не фантазировать?

Вот в IPB

Код

-- 
-- Структура таблицы `ibf_topic_markers`
-- 

CREATE TABLE `ibf_topic_markers` (
  `marker_member_id` int(8) NOT NULL default '0',
  `marker_forum_id` int(10) NOT NULL default '0',
  `marker_last_update` int(10) NOT NULL default '0',
  `marker_unread` smallint(5) NOT NULL default '0',
  `marker_topics_read` text,
  `marker_last_cleared` int(10) NOT NULL default '0',
  UNIQUE KEY `marker_forum_id` (`marker_forum_id`,`marker_member_id`),
  KEY `marker_member_id` (`marker_member_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;

-- 
-- Дамп данных таблицы `ibf_topic_markers`
-- 

INSERT INTO `ibf_topic_markers` VALUES (1, 2, 1222775538, 0, 'a:0:{}', 1222775538);
INSERT INTO `ibf_topic_markers` VALUES (2, 2, 1222775701, 1, 'a:1:{i:1;i:1222775701;}', 0);


Как видно, для каждого юзера и для каждого подфорума есть запись в таблице...
1,2) marker_member_id, marker_forum_id - это понятно.
3) marker_last_update - таймстамп последнего просмотра темы в этом форуме этим юзером
4) marker_unread - есть ли непрочитанные юзером топики
5) marker_topics_read - сериализованный список прочитанных мессаг
6) marker_last_cleared - тиместамп, когда юзер кликает "все темы прочитаны"..

Несколько сложная структура, но в целом всё понятно.

Не смотрел, как сделано в ВБ и ПХПББ, но там всё проще, т.к. там даже если не прочитал за сеанс все сообщения - в следующий заход они будут уже помечены, как просмотренные. А в ИПБ - посложнее, нагрузка на базу побольше, но юзеру удобнее, т.к. непрочитанные темы всё равно остаются непрочитанными, даже если заходил на форум после последнего сообщения в теме, но не читал его.

Это сообщение отредактировал(а) teroni - 30.9.2008, 15:10
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.3129 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.