Não há muitas opções.
-
marque cada thread de leitor por cada usuário.
- Desvantagens:muitas linhas em fóruns muito ativos
- Vantagens:Todo usuário sabe com a postagem que leu ou não.
-
marque todos os tópicos não lidos por cada usuário.
- Desvantagens:muito espaço com linhas "não lidas" se houver inatividade de muitos usuários
- Soluções:adicione um timestamp vitalício e exclua registros antigos com um cron
- Vantagens:Todo usuário sabe com a postagem que leu ou não.
-
use carimbos de data/hora para determinar se a mostra como não lida ou não.
- Desvantagens:Os usuários não sabem com os tópicos reais não lidos, as marcas mostram apenas os "novos trheads" desde o último login
- Vantagem:economize espaço
A outra alternativa é misturar soluções, ou seja,
1 e 3) mostram o tópico como "não lido" se não tiver mais de X dias e não houver uma linha marcada como lida para o usuário. As linhas "lidas" podem ser excluídas quando forem X dias mais antigas sem afetar nada.
Vantagens
- menos espaçamento usado para determinar encadeamentos não lidos
Desvantagens
- crie um cron que mantenha o sistema limpo
- Os usuários não sabem se lêem tópicos com mais de x dias.
Vantagens
- Todo usuário sabe quais "novas postagens" leu ou não.