"NEW"-Anzeige im Forum

grasman

Mitglied
Hi all

ich habe für meinen Clan ein Forum geschrieben, in dem Member bzw. registrierte User angezeigt bekommen sollen, in welchen Threads sich etwas verändert hat, sprich neue Posts dazu gekommen sind.
Ich weis leider nicht wie ich das realisieren kann :(

Könnt ihr mir vielleicht ein paar Denkanstöße geben?

Danke!

mfg, grasman
 
Hi!

Merk dir einfach wann der Benutzer das letzte mal angemeldet war,
und wann der letzte Beitrag in einem Thread geschrieben wurde.

Wenn der letzte Beitrag in einem Thread nach dem letzten Login eines Benutzers geschrieben wurde, packste da ein "NEW" hin.

Gruß
 
tYrEaL hat gesagt.:
Hi!

Merk dir einfach wann der Benutzer das letzte mal angemeldet war,
und wann der letzte Beitrag in einem Thread geschrieben wurde.

Wenn der letzte Beitrag in einem Thread nach dem letzten Login eines Benutzers geschrieben wurde, packste da ein "NEW" hin.

Gruß
? Nee so nicht.

Ich weiß nicht, wie das in Foren , aber ich würds so machen:
Tabelle, wo drinnen steht, was die User schon gelesen haben. Dann kannst du abgleichen: if (datum_des_letzten_beitrags > datum_des_gespeicherten_beitrags_für_den_user_in_diesem_thread) { new }
 
Danke für die Antworten! :)

Ich denke das könnte mir weiterhelfen aber das muss ich morgen mal auschecken bin heute viel zu dicht dafür ^^

ich schreib morgen nochma ;)

mfg, grasman
 
Ich hab's bei mir so aehnlich realisiert wie irgendjemand_1 beschrieben hat.

In meiner Datenbank gibt es die Tabelle threadvisits. Diese hat die Felder userid, threadid und visittime.
Wird nun ein Thread geoeffnet werden diese 3 Daten in der Daten eingetragen, bzw. aktualisiert.
Anhand dessen kann dann ganz einfach festgestellt werden ob nach dem letzten Besuch im Thread ein neuer Post eingetragen wurde.
 
reptiler hat gesagt.:
Ich hab's bei mir so aehnlich realisiert wie irgendjemand_1 beschrieben hat.

In meiner Datenbank gibt es die Tabelle threadvisits. Diese hat die Felder userid, threadid und visittime.
Wird nun ein Thread geoeffnet werden diese 3 Daten in der Daten eingetragen, bzw. aktualisiert.
Anhand dessen kann dann ganz einfach festgestellt werden ob nach dem letzten Besuch im Thread ein neuer Post eingetragen wurde.

Ja, so hab ich's auch gemeint, ich seh nur grad, dass ich mich nicht wirklich deutlich ausgedrückt habe.
Ich glaub das macht auch am meisten Sinn so.
Und dann nicht das löschen bzw. updaten der Datensätze vergessen, sonst ist die nacher weiß ich wie groß :P
 
Naja, so gross ist das auch nicht.
Es werden zwar eine Menge Eintraege aber die sind alle recht klein.
Geloescht werden diese Eintraege bei mir nur dann wenn der User oder der Thread geloescht wird.
Wenn ein User einen Thread wiederholt besucht wird der bestehende Eintrag auch nur aktualisiert, alles andere waere ja Quatsch.
 
Jap, Reptiler, war wieder so gemeint :D

Wegen der Größe: Sind zwar recht wenig Daten, aber trotzdem unnötig, dass man bei einem Thread dann 20 Datensätze, oder so hätte ... ;)

Ist in etwa so, wie bei einer Überprüfung, die mit einer Schleife stattfindet ein break; reinzubaun, oder nicht. Merken wird's eh keiner ;)
 
Schon richtig.

Mal 4 kleine Rechenbeispiele:

100 User, 500 Threads: max. 50.000 Eintraege
500 User, 2000 Threads: max. 1.000.000 Eintraege
1000 User, 5000 Threads: max. 5.000.000 Eintraege

Beispiel tutorials.de:
128.632 User, 123.903 Threads: max. 15.937.890.696 Eintraege

Muesste eigentlich so stimmen.

Das ist zwar jetzt im Grunde ein riesen Haufen.
Aber man muss dabei auch beruecksichtigen, dass das Maximalwerte sind die in der Realitaet eher unwahrscheinlich sind, da wohl kein User alle Threads besuchen wird.

Nachtrag: Ich hatte mir zusaetzlich noch ueberlegt demnaechst bei mir ein Ablaufdatum fuer Posts zu realisieren, sodass ein Thread nach einem Monat ohne neuen Post auch ohne Datenbankeintrag, oder mit einem alten Datenbankeintrag quasi nicht mehr als ungelesen gilt. Sozusagen aus Desinteresse. :)
Auch in diesem Fall koennte dann theoretisch ein evtl. existierender Datenbankeintrag geloescht werden.
 
Zuletzt bearbeitet:
Zurück