alaninalanin
Mitglied
Hallo,
ich bin immernoch dabei ein Forum zu schreiben und stehe nun vor der Funktion der gelesenen Beiträge.
Ich habe entschieden, dass ich das bis auf den einzelnen Post herunterbrechen möchte. Also reicht nicht nur der Zeitstempel des letzten Besuchs aus. Zudem soll es eine Funktion geben die es ermöglicht ein bestimmtes Forum als gelesen zu markieren bzw. alle Foren als gelesen zu markieren.
Nun meine Überlegungen:
1. Ich habe für jeden ungelesenen Beitrag einen Eintrag in der Datenbank. Informationen die ich speichere sind die ForumID, ThreadID, PostID, UserID und Zeitstempel. Den Zeitstempel dachte ich mir verwenden zu wollen, da ich alle Thread, in denen 'n' Tage lang nichts passiert ist generell als gelesen markieren möchte um die Datenbank zu entlasten.
Somit wird immer wenn ein neuer Beitrag geschrieben wird für jeden Benutzer ein Eintrag in dieser Tabelle gespeichert - vorher vielleicht die alten löschen, die den gleichen Thread behandeln.
2. Ich habe für jeden gelesenen Beitrag einen Eintrag in der Datenbank. Die gespeicherten Informationen sind wieder die gleichen wir oben. Auch die Funktion des Zeitstempels bleibt gleich. Bei einem neuen Beitrag werden dann alle Einträge aus der Tabelle gelöscht, die mit diesem Thread zu tun haben und somit als "ungelesen" markiert.
Den Unterschied sehe ich in der Benutzung der "alles als gelesen markieren" Funktion. Bei Überlegung 1 ist anfangs die Tabelle zwar größer, wird aber durch die Benutzung der Funktion kleiner.
Wobei Überlegung 2 die Tabelle anfangs klein hat und nur durch Benutzung der "gelesen" Funktion einträge in diese Tabelle kommen.
Generell würde ich sagen, dass es sehr stark auf die Benutzer des Forums ankommt, sind diese nur angemeldet und nutzen das Forum eher selten bzw. nur wenige aktive Mitglieder, dann ist Variante 2 wohl besser. Wird das Forum und die "alles gelesen" Funktion stark benutzt wäre wohl die 1. Variante besser.
Was meint ihr, welcher Weg wäre der bessere für die Datenbank. Oder gibt es vielleicht noch einen anderen?
Schönen Dank für eure Beiträge.
Grüße Jörg
ich bin immernoch dabei ein Forum zu schreiben und stehe nun vor der Funktion der gelesenen Beiträge.
Ich habe entschieden, dass ich das bis auf den einzelnen Post herunterbrechen möchte. Also reicht nicht nur der Zeitstempel des letzten Besuchs aus. Zudem soll es eine Funktion geben die es ermöglicht ein bestimmtes Forum als gelesen zu markieren bzw. alle Foren als gelesen zu markieren.
Nun meine Überlegungen:
1. Ich habe für jeden ungelesenen Beitrag einen Eintrag in der Datenbank. Informationen die ich speichere sind die ForumID, ThreadID, PostID, UserID und Zeitstempel. Den Zeitstempel dachte ich mir verwenden zu wollen, da ich alle Thread, in denen 'n' Tage lang nichts passiert ist generell als gelesen markieren möchte um die Datenbank zu entlasten.
Somit wird immer wenn ein neuer Beitrag geschrieben wird für jeden Benutzer ein Eintrag in dieser Tabelle gespeichert - vorher vielleicht die alten löschen, die den gleichen Thread behandeln.
2. Ich habe für jeden gelesenen Beitrag einen Eintrag in der Datenbank. Die gespeicherten Informationen sind wieder die gleichen wir oben. Auch die Funktion des Zeitstempels bleibt gleich. Bei einem neuen Beitrag werden dann alle Einträge aus der Tabelle gelöscht, die mit diesem Thread zu tun haben und somit als "ungelesen" markiert.
Den Unterschied sehe ich in der Benutzung der "alles als gelesen markieren" Funktion. Bei Überlegung 1 ist anfangs die Tabelle zwar größer, wird aber durch die Benutzung der Funktion kleiner.
Wobei Überlegung 2 die Tabelle anfangs klein hat und nur durch Benutzung der "gelesen" Funktion einträge in diese Tabelle kommen.
Generell würde ich sagen, dass es sehr stark auf die Benutzer des Forums ankommt, sind diese nur angemeldet und nutzen das Forum eher selten bzw. nur wenige aktive Mitglieder, dann ist Variante 2 wohl besser. Wird das Forum und die "alles gelesen" Funktion stark benutzt wäre wohl die 1. Variante besser.
Was meint ihr, welcher Weg wäre der bessere für die Datenbank. Oder gibt es vielleicht noch einen anderen?
Schönen Dank für eure Beiträge.
Grüße Jörg