sql >> Databasteknik >  >> RDS >> Mysql

PHP-forum - hur man hanterar olästa diskussioner / ämnen / inlägg

Det finns inte många val.

  1. markera varje läsartråd av varje användare.

    • Nackdelar:många rader i mycket aktiva forum
    • Fördelar:Alla användare vet med inlägg har läst eller inte.
  2. markera varje oläst tråd av varje användare.

    • Nackdelar:mycket utrymme med "olästa" rader om det finns många användares inaktivitet
    • Lösningar:lägg till en livstidstidsstämpel och radera gamla poster med ett cron
    • Fördelar:Alla användare vet med inlägg har läst eller inte.
  3. använd tidsstämplar för att avgöra om den ska visas som oläst eller inte.

    • Nackdelar:Användarna inte vet med är de riktiga olästa trådarna, märkena visar bara "nya trheads" sedan senaste inloggningen
    • Fördel:Spara utrymme

Det andra alternativet är att blanda lösningar, det vill säga

1 och 3) visar tråden som "oläst" om de inte är äldre än X dagar och det inte finns en rad markerad som läst för användaren. De "lästa" raderna kan raderas när de är X dagar äldre utan att påverka någonting.

Fördelar

  • mindre mellanrum används för att fastställa olästa trådar

Nackdelar

  • skapa en cron som håller systemet rent
  • Användare vet inte om de läser trådar som är äldre än x dagar.

Fördelar

  • Varje användare vet vilka "nya inlägg" som har läst eller inte.


  1. Hur använder man IN-operatorn med JDBI?

  2. Hur man konfigurerar Source-Replica Replication i MySQL

  3. MySQL:Kolumn 'kolumnnamn' där klausulen är tvetydig

  4. Så här visar du flera frågor och resultat sida vid sida i SQL Server Management Studio (SSMS) - SQL Server / TSQL självstudie del 14