tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
206
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    PCFreund PCFreund ist offline Grünschnabel
    Registriert seit
    Aug 2011
    Beiträge
    2
    Hallo,

    ich habe mich hier angemeldet, weil ich jemanden suche der mir 'nen Tipp geben kann, wie ich die Funktion "Beitrag (un-)gelesen" in einem selbstprogrammiertem Forum verwirklichen kann. Das ist mein erstes Forum´s-Projekt, daher weiß ich noch nicht wie ich es machens soll.

    Wenn ich sage, beim Thread-Erstellen soll einer Spalte einer Datenbank ein Text hinzugefügt werden und das bei 10000 Usern wird das Thread-Erstellen ersichtlich lange dauern.
    Wenn ich jedoch sage, beim Lesen eines Thread´s soll einer Spalte einer Datenbank ein Text hinzugefügt werden und das bei 10000 Usern wird das Thread-Lesen ersichtlich lange dauern.

    Etwas anderes als diese beiden Möglichkeiten ist mir nicht eingefallen, weswegen ich hier frage. Wie machen es andere Forum á la phpBB oder vBulletin?

    Liebe Grüße,
    Kevin Holly
     

  2. #2
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Hi und Willkommen bei tutorials.de

    Eine perfekte Lösung wird es nicht geben.
    Wie es vBulletin zB. hier macht, weiß ich leider nicht.
    Wird ziemlich komplex sein und von den Entwicklern auch nicht jedem verraten werden.

    Die simpelste Lösung wäre zu speichern, wann ein User das letzte Mal online war.
    Wenn er jetzt wieder auf die Seite kommt, alles als ungelesen abzeigen, was zwischen seinem letzten Besuch und jetzt gekommen ist.
    Vorteil: Einfach, belastet die DB nicht
    Nachteil: Wenn er wieder offline geht muss man alles als gelesen betrachten, auch wenn er es nicht hat.
    Aber zumindest sieht er immer, was neu ist.

    Andere Lösung: Für Jedes Thema exakt speichern, welche User es schon gelesen haben.
    Ist ungefähr dein Gedanke.
    Vorteil: Für den Benutzer perfekt.
    Nachteil: Für den Server Horror. Performancetod. Zumindest ab einer gewissen Beitrags-/Benutzeranzahl.

    Da die Benutzeranzahl deines Forums aber vermutlich nicht gleich in die Hunderttausend gehen wird, könnte man einen relativ einfachen Kompromiss aus den beiden Extremen machen.
    zB. Für die jeweils letzten 7 Tage alles genau speichern und alles älter als 7 Tage automatisch als gelesen annehmen.

    Gruß
    Geändert von sheel (07.08.11 um 01:13 Uhr) Grund: Tippfehler "automatisch"
     

  3. #3
    PCFreund PCFreund ist offline Grünschnabel
    Registriert seit
    Aug 2011
    Beiträge
    2
    Hallo sheel,

    danke für deine schnelle Antwort. Wie du geschrieben hast "Für die jeweils letzten 7 Tage alles genau speichern und alles älter als 7 Tage automatscih als gelesen annehmen." hört sich toll an. Werde es mal so versuchen. Falls es halt User gibt die eine andere Idee haben, nur her damit. Zurzeit ist halt diese die einzigste Lösung.

    Liebe Grüße und danke,
    PCFreund
     

  4. #4
    Alex S Alex S ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Beiträge
    38
    Ich habe sowas auch schon mal gemacht.
    Du könntest eine neue Tabelle erstellen(sofern du mit MySQL programmierst),
    wo immer wenn ein User den Beitrag gelesen hat,
    in eine spalte die Id des Eintrages und in eine Andere die Id des Users(sofern jeder User eine Id hat) einträgt.

    So wenn ein User jetzt online geht zeigt deine Seite nur die Einträge an,
    die nicht in der Tabelle stehen.
    Somit werden immer nur die ungelesen Einträge angezeigt.

    Hoffe, dass ich dir helfen konnte.
     

  5. #5
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Auf das ist der Threadersteller auch ohne Hilfe schon gekommen...erster Post.
    und warum das nicht so optimal ist, kann men dem nächsten Post entnehmen.
     

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 23.11.10, 16:09
  2. Antworten: 4
    Letzter Beitrag: 25.08.10, 19:13
  3. Frage zu "Vorschaltseite", Hinweise gelesen.
    Von klausiman im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 21.06.08, 02:10
  4. Antworten: 0
    Letzter Beitrag: 13.08.04, 19:10
  5. "Scale Mode" eines "Image" Steuerelements ändern
    Von daDom im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 24.04.04, 01:45

Stichworte