forum - følg med i tråd

Tags:    php

Hej, jeg er igang med at lave et forum og der kunne jeg godt tænke mig at lave så hvis en bruger skrev en tråd eller en kommentar i en tråd,
når der så kom en ny besked i den tråd så skal brugeren få en besked om det

Er der en som kan give en idé om hvordan jeg laver det :)?


lige nu ser mine tabeller i databasen sådan her ud


Fold kodeboks ind/udSQL kode 




Hver gang der skrives i en tråd af bruger B

hen alle bruger unikke id'er fra forum_kommentare et felt der iøvrigt mangler i den tabel såvidt jeg kan se hvor fk_forum_traad er lig med tråden. Hent evt også bruger id fra forum_traad hvis den første post i en tråd kun findes i den tabel

indset i en notify for hver hentede bruger id en besked om at der er en ny besked i den tråd
hver række har trådens id og en af brugernes id'er du skal ikke indsette bruger B's eget id indlysende nok. Hvis en række allerede findes gør ingenting.


Når det må antages at bruger A har set notificationen for tråden slet da rækken med bruges A's id og tråden.

Når bruger A skal se notificationer vis alle rækker fra notification tabellen med bruger A's id.


Dette system forudsat det virker vil indlysende nok notificer fra alle tråde en bruger har skrevet en post i altid hvis tråden bliver opdateret.





hm :P jeg synes det er lidt svært at forstå det du skriver, tror du at du kan formulere det på en mere "skær ud i pap" version :)?

ellers tusind tak for hjælpen



Hmm mere ud i pap

Antageligt set har du flere end en bruger så lad os kalde en af dem B og en anden af dem A.

Hvis vi antager at A har lavet en post i tråd T så vil du godt have at A får en besked når bruger B laver en post i tråd T.

For at finde ud af hvilke brugere A skal have en besked når der laves en besked i tråd T skal du finde noget der indentificer brugerne i tråden T kommentarer. Til dette bruger du brugernes ID, hver bruger har et unikt ID så hvis de ved hver post i tråd T har dette ID kan du finde en liste L af de brugere der har skrevet en post i tråd T ved at tage bruger id for alle posterne i tråd T. Eftersom at en bruger kun skal have en besked skal du rense L for gentaget ID'er og eftersom at bruger B ikke skal have en besked om at han selv har lavet en post skal du også fjerne hans ID fra L

Du ved nu at alle brugere i L skal have en besked om at der er lavet en post i T, for at gøre dette skal du have en tabel N der har en række for hver bruger id i L med id'et fra T.

Så tabel N har 2 kollonner brugerid og tråd id du indsætter en række for hver bruger id i L med T id.

Når en bruger A så skal vises at der er notifikationer af nye besked henter du alle rækker i N hvis bruger id er A's.

Når du kan antage at bruger A har set en notifikation og ikke ønsker at blive notificeret igen skal du slette den række med A's id og den tråds id han er blevet notificeret omkring.



Tror ikke det kan skæres mere ud i pap.



t