![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 31 Pomógł: 0 Dołączył: 10.04.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Na jakiej zasadzie (np. w phpBB, lub IPB) dziala oznaczanie postow jako przeczytane lub nieprzeczytane? Nie wyobrazam sobie zapisywania takich danych w bazie. Tak szczerze mowiac to w ogole sobie nie wyobrazam jak takie cos zmontowac. Bylbym wdzieczny za jakiekolwiek wskazowki. Pozdr. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 743 Pomógł: 0 Dołączył: 11.11.2003 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Mozesz zapamietywac ostatnią wizytę danego użytkownika i wszystkie nowsze posty pokazywac jako nieprzeczytane. Dodatkowo stworzyc tabele w ktorej trzymalbys ostatnie przeczytane zeby uzytkownik na biezaco widzial co przeczytal a po jego wyjsciu ze strony kasowalbys to info by nie zawalalo bazy.
-------------------- Słońce zachodzi ... kolejna noc nadchodzi ...
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 31 Pomógł: 0 Dołączył: 10.04.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Kuziu @ 2006-03-01 15:39:00) Mozesz zapamietywac ostatnią wizytę danego użytkownika i wszystkie nowsze posty pokazywac jako nieprzeczytane. Dodatkowo stworzyc tabele w ktorej trzymalbys ostatnie przeczytane zeby uzytkownik na biezaco widzial co przeczytal a po jego wyjsciu ze strony kasowalbys to info by nie zawalalo bazy. OK, a jak bede mial ~5.000 userow? Dla kazdego tworzyc pole z nieprzeczytanym postem? To sie troche mija z celem... Ma ktos moze jakies inne bardziej optymalne rozwiazania? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 476 Pomógł: 1 Dołączył: 5.11.2005 Skąd: Bieruń city Ostrzeżenie: (0%) ![]() ![]() |
~SNC: gdzieś te inforamcje trzeba trzymać. Można wykorzystać cookies/sesje, ale nie polecam tego rozwiązania. Rozwiązanie Kuziu'ia jest dobre i lepsze mi do głowy nie przychodzi.
jeżeli nie wiesz jak to zrobić, to uprzedzę twoje pytanie: Dodatkowe kolumny w tabeli z userami: czas_od_ktorego_wszystkie_nastepnie_posty_sa_nieprzeczytane (czas od 1/01/1970) id_postow_stanowiacych_wyjatki (zserializowana tablica) Jak user przeczyta jakiś post, to id będzie dodawane do tablicy z wyjątkami, a natępnie robimy pętle while: GDY id najstarszego postu mieszczacego sie w przedziale nieprzeczytanych == najmniejsze id z listy wyjatków TO usun id z listy wyjatków, a jako czas_od_ktorego... ustaw czas dodania postu, który jest nastepny w liście wyjatków. -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 743 Pomógł: 0 Dołączył: 11.11.2003 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Cytat(SNC @ 2006-03-01 18:20:50) Cytat(Kuziu @ 2006-03-01 15:39:00) Mozesz zapamietywac ostatnią wizytę danego użytkownika i wszystkie nowsze posty pokazywac jako nieprzeczytane. Dodatkowo stworzyc tabele w ktorej trzymalbys ostatnie przeczytane zeby uzytkownik na biezaco widzial co przeczytal a po jego wyjsciu ze strony kasowalbys to info by nie zawalalo bazy. OK, a jak bede mial ~5.000 userow? Dla kazdego tworzyc pole z nieprzeczytanym postem? To sie troche mija z celem... Ma ktos moze jakies inne bardziej optymalne rozwiazania? Ale nie wiem czy rozumiesz co napisałem. Ta tabela jest tylko i wyłącznie na czas w którym użytkownik jest na stronie więc jeśli przeczyta sobie 50 topicow i je zapamiętasz to nie masz zbyt duzej tabeli a jak wyjdzie ze strony to jego dane poprostu skasujesz. Nie masz pamietac wszystkich topicow dla wszystkich uzytkownikow. Jednoczenie na stronie nie bedą wszyscy naraz a nawet jak by byli to nic nie szkodzi. Nowy uzytkownik wchodząc kasuje z tabeli wpisy uzytkownikow ktorzy nie są już online i po sprawie. Przeczytaj moj post jeszcze raz. Ten post edytował Kuziu 1.03.2006, 22:27:40 -------------------- Słońce zachodzi ... kolejna noc nadchodzi ...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 16.06.2025 - 20:48 |