Скрипт форума - новые сообщения

Lord Maverik
На сайте с 15.04.2003
Offline
471
514

Кто знает как работает система определения количества новых сообщений на данном форуме и пометки в темах и сообщения, что есть новые сообщения?

RedMall.Ru (https://redmall.ru) - Товары из Китая (Таобао, Tmall) с проверкой качества, скидка для форумчан 7% Партнерская программа 2 уровня: 5% + 5%. Подробнее. (https://redmall.ru/about/partner/)
[Удален]
#1

Я думаю всё просто, заносится дата последнего визита юзера, потом когда юзер снова заходит считается количество постов от oldtime до realtime, думаю всё просто.

Lord Maverik
На сайте с 15.04.2003
Offline
471
#2

Нет, все не так просто.

Вот я залогинен, и авторизация идет по кукам. При открытии каждой страницы проверяется авторизация. Но новые сообщения периодически сбрасываются. Тут я так думаю какойто алгоритм, типа вот дата какаято. Проходит например 1 час, скидываем счетчик и считаем заново, вот тут не пойму как оно работает.

А по темам вообще жесть. Как в каждой теме детектриуются новые сообщения не ясно.

Вот я вошел, ок. Есть дата моего входа, есть дата последнего сообщения, вроде бы все верно. Вот я прочел темку, отметилось что в этой теме я последний раз тогдато. И как бы можно определять.

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

Может оно сбрасывает все на прочитаное, при нажатии ссылки - все новые сообщения...

В общем блин у меня каша по этой части :(

N
На сайте с 06.05.2007
Offline
419
#3

а вы в кукисы свои посмотрите :) bbthread_lastview .

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

кстати, с этим связана принципиальная проблема - вы не можете кешировать сами сгенерированные странички. код html для каждого пользователя разный. все еще хотите сделать такую схему у себя?

Кнопка вызова админа ()
Lord Maverik
На сайте с 15.04.2003
Offline
471
#4

Ага, инфу по просмотреным топикам просто храним в куках...

Значит при выводе топика, если дата последнего месаджа позже куки, то есть новые мессаджи, если нет, отмечается как прочитанный...

А что касается поиска и показа кол-ва новых сообщений, я правильно описал это дело?

Lord Maverik добавил 21.01.2009 в 11:57

netwind:
кстати, с этим связана принципиальная проблема - вы не можете кешировать сами сгенерированные странички. код html для каждого пользователя разный. все еще хотите сделать такую схему у себя?

Вот этого чето не понял :(

N
На сайте с 06.05.2007
Offline
419
#5

Посмотрите в правом верхнем углу написано "Последний визит: Сегодня в " ?

Вот новые сообщения это просто сообщения с момента последнего визита. Эта информация о последнем визите обновится при старте новой сессии. Обычно когда вы первый раз загружаете страничку после длительного отсутствия.

N
На сайте с 05.09.2005
Offline
101
#6

Я как раз вчера такой скрипт для своего форума написал.

Заходит пользователь на сайт, получает куку со временем входа. Далее в разделе "новые сообщения" отображаются все месседжи начиная с даты, записанной в куки, по настоящее время. Таймаут (сброс сообщений) и время хранения куки (после чего она обновляется) - 2 часа. Конечно, пользователь может вернуться через неделю. Тогда он получит все сообщения за неделю, обновленную куку и страницу "новые сообщения" на 2 часа. То есть получается, логика как у Lord Maverik.

А вот по поводу отметки сообщений - это вообще жесть.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий