Это мой вопрос. На примере сообщений. У вас темы но всё аналогично.
Алгоритм такой:
----------
создать таблицу
id id_пользователя id_темы время_последнего_посещения_темы
При заходе пользователя в тему смотрим время_последнего_посещения_темы.
Если нет такой записи в таблице - создаём её.
Если есть запись - сравниваем время публикации сообщения с время_последнего_посещения_темы.
Если время публикации сообщения больше время_последнего_посещения_темы, то оно новое. Ставим метку.
Обновляем запись время_последнего_посещения_темы. Ставим текущее время.
---------
Понятно, что тем много. Их число увеличивается.
Поэтому можно ввести ограничение на количество отслеживаемых тем. Например 10 или 20. Всё равно редко кто смотрит сотую тему.
Если пользователь вошел в 11 тему, а уже есть 10 записей в таблице, то обновляем последнюю запись, с наименьшим временем (самую старую). Ставим ей id и прочее новой темы. такой круговорот.
|