Trong khi xem xét lược đồ có liên quan cho phpBB , Tôi đã tìm thấy những điều sau:
# Table: 'phpbb_topics_track'
CREATE TABLE phpbb_topics_track (
user_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
topic_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
forum_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
mark_time int(11) UNSIGNED DEFAULT '0' NOT NULL,
PRIMARY KEY (user_id, topic_id),
KEY topic_id (topic_id),
KEY forum_id (forum_id)
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
Và:
# Table: 'phpbb_forums_track'
CREATE TABLE phpbb_forums_track (
user_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
forum_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
mark_time int(11) UNSIGNED DEFAULT '0' NOT NULL,
PRIMARY KEY (user_id, forum_id)
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
Sau đó, tôi xem tại đây trong wiki của họ :
Vì vậy, về cơ bản họ có một bảng tra cứu để lưu trữ dữ liệu liên quan đến việc người dùng xem một chủ đề (chuỗi), sau đó kiểm tra nó dựa trên dấu thời gian trong bảng xem diễn đàn, để xác định xem chủ đề đã được người dùng xem hay chưa.