brojač nepročitanih postova

Kako se radi brojač nepročitanih postova na forumu…mislim da je to smao usporedba vremena…u bazi imam zapisano zadnju posjetu korisnika kad je kliknuo na forum…dakle, pri loginu napravim brojanje postova koji su zapisani poslje korisnikove zadnje posjete…kako juzer otvara topic, prebrojim koliko ima novih postova u njemu i skinem s osnovnog brojača…dok se brojač ne smanji na 0 forum je označen crvenom bojom…

No jasno da takav princip nije u potpunosti točan…prvo pitanje je kad zapisati vrijeme zadnjeg klika na forum…jedna od ipravnih opicja je svakako kad se brojač spusti na nulu…no što ako se juzer logira, ima 7 nepročitanih poruka…dvije pročita…5 preostalih mogu recimo spremiti u bazu a ujedno i spremim vrijeme čitanja…kod novog logina na brojač dodam broj iz baze…tako bi stvar vjerovatno i funkcionirala kako treba…no kako znati točno koji topic/forum je pročitan koji nije već je malo teže odrediti ovakvim načinom…

Pomagajte ako netko ima ideju…

Ovisi o tome što želiš postići. Klasičan pristup je upravo taj koji si opisao - prikažu se oni postovi koji su napisani nakon zadnje aktivnosti korisnika.

[quote=“hori”]
No jasno da takav princip nije u potpunosti točan…prvo pitanje je kad zapisati vrijeme zadnjeg klika na forum…jedna od ipravnih opicja je svakako kad se brojač spusti na nulu…no što ako se juzer logira, ima 7 nepročitanih poruka…dvije pročita…5 preostalih mogu recimo spremiti u bazu a ujedno i spremim vrijeme čitanja…kod novog logina na brojač dodam broj iz baze…tako bi stvar vjerovatno i funkcionirala kako treba…no kako znati točno koji topic/forum je pročitan koji nije već je malo teže odrediti ovakvim načinom…

Pomagajte ako netko ima ideju…[/quote]
Ako se korisnik prijavi i ima 5 nepročitanih tema/postova te pročita samo 3, neka aplikacija to tumači kao da ga ostale dvije teme ne zanimaju. Drugim riječima, iritantno bi bilo da se korisniku kod svake posjete prikazuju one teme/postovi koje nije pročitao - jer ih možda niti ne želi pročitati…

p.s. bilo bi također pametno pozvati ovu provjeru samo u određenom vremenskom intervalu - npr. provjeravaš nove teme/postove u intervalu od mjesec dana…

uzmimo ovaj forum na primjer…

tu dakle za svaki forum imamo zvjezdicu koja je transparent background ako nema nepročitanih postova unutar foruma, a postaje žuta kad ima nepročitani post…

mene zanima kako se rješavaju takve stvari opčenito…

imam tablicu sa porukama na forumu
postID, topicID, forumID, message, userID, post_time,…

dakle kad se korisnik logira, selektiram sve forumID gdje je post_time>od zadnje posjete

recimo da ima 7 postova koji zadvoljavaju gornji uvjet a imaju forumID == 2 i još 4 posta koji zadovoljavaju uvjet i imaju forumID == 5

sad korisnik otvori forumID==2 i u njemu neki topicID…provjerim da li u pripadajućem topicu ima novih postova (oni koji su post_time>od zadnje posjete i gjde je topicID==neki topic) ili da skratim priću ćim otvori neki forumID, u ovom slučaju 2, odma ide provjera (oni koji su post_time>od zadnje posjete i gjde je forumID==2)…ako je uvjet TRUE zapiši $now u tablicu juzera kao zadnja posjeta…sad bi forumID==2 bio označen kao pročitan što je ajmo reći OK…

no iako forum_ID==5 nije kliknut i on bi automatski postao pročitan…
ništa mi ne pada na pamet osim kreirati još jednu tablicu, userID, forumID, last_visit pa onda posebno upisivati vrijeme svakog kliknutog foruma posebno i uspoređivati nove postove s tim vremenom ili vjerovatno pametnije rješenje, to vrijeme zapisivati u nekakav cookie jer ionako je to samo informacija da li forum označiti kao pročitan ili nepročitan

uzmimo ovaj forum na primjer…

tu dakle za svaki forum imamo zvjezdicu koja je transparent background ako nema nepročitanih postova unutar foruma, a postaje žuta kad ima nepročitani post…

mene zanima kako se rješavaju takve stvari opčenito…

imam tablicu sa porukama na forumu
postID, topicID, forumID, message, userID, post_time,…

dakle kad se korisnik logira, selektiram sve forumID gdje je post_time>od zadnje posjete

recimo da ima 7 postova koji zadvoljavaju gornji uvjet a imaju forumID == 2 i još 4 posta koji zadovoljavaju uvjet i imaju forumID == 5

sad korisnik otvori forumID==2 i u njemu neki topicID…provjerim da li u pripadajućem topicu ima novih postova (oni koji su post_time>od zadnje posjete i gjde je topicID==neki topic) ili da skratim priću ćim otvori neki forumID, u ovom slučaju 2, odma ide provjera (oni koji su post_time>od zadnje posjete i gjde je forumID==2)…ako je uvjet TRUE zapiši $now u tablicu juzera kao zadnja posjeta…sad bi forumID==2 bio označen kao pročitan što je ajmo reći OK…

no iako forum_ID==5 nije kliknut i on bi automatski postao pročitan…
ništa mi ne pada na pamet osim kreirati još jednu tablicu, userID, forumID, last_visit pa onda posebno upisivati vrijeme svakog kliknutog foruma posebno i uspoređivati nove postove s tim vremenom ili vjerovatno pametnije rješenje, to vrijeme zapisivati u nekakav cookie jer ionako je to samo informacija da li forum označiti kao pročitan ili nepročitan


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja