![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 99 Pomógł: 5 Dołączył: 20.06.2005 Skąd: Bielsk Podlaski Ostrzeżenie: (0%) ![]() ![]() |
Witam
Szukam podpowiedzi dotyczącej sposobu wykonania czegoś takiego jak nieczytane posty , czy artykuły. ![]() Zastanawiałem się też nad wykonaniem tego na plikach, ale to też powodowałoby sytuacje podobną do opisanej wyżej. ![]() Bardzo proszę o podpowiedź, jak mogę wykonać skrypt sprawdzający czy dany artykuł / post jest przeczytany przez użytkownika? Pozdrawiam |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
A jak to jest zrobione w phpbb ?
![]() -------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 656 Pomógł: 3 Dołączył: 26.10.2005 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
hmm nie wiem... moze dozywotnie sesje...
czyli uzytkownik ma taki sam id sesji (zapisany w bazie ) przez cały czas i tam numery ID przeczytanych tematów lub maybe dla kazego topicu w bazie przechowywany spis ID uzytkownikow którzy otwierali ten temat -------------------- zmoderowano - waga i rozmiar
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 130 Pomógł: 1 Dołączył: 29.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Przede wszystkim to nie zapisuj w bazie informacji czy artykul jest przeczytany czy nie , zapisuj tylko id jesli artykul jest nieczytany, dodatkowo przy wylogowywaniu usuwaj wszystkie nieczytane artykuly i wtedy przy nastepnym logowaniu zostaną wyswietlone tylko nieczytane artykuly od ostatniej wizyty,podobne rozwiązanie stosowane jest m.in w phpbb.
Ewentualnie możesz oprzeć to o sesje i w nich zapisywać informacje o tym że temat jest nieprzeczytany, zdaje sie ze w podobny sposob jest to zrobione w ipb na ktorym teraz siedzimy, przynajmniej dla niezalogowanych uzytkownikow. Ten post edytował flv 4.07.2007, 20:39:38 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 99 Pomógł: 5 Dołączył: 20.06.2005 Skąd: Bielsk Podlaski Ostrzeżenie: (0%) ![]() ![]() |
Myslę, że najrozsądniej będzie zapisywać datę ostatniej wizyty usera na stronie, a potem oznaczyć jako nieczytane wszystkie te artykuły, które były napisane po tej dacie. Nie wymyśliłem jeszcze jak rozwiązać problem, kiedy nowy artykuł będzie napisany w momencie , gdy user przegląda stronę.
![]() Zrobiłem to tak: Dodałem w bazie tabelę z użytkownikami online. Kiedy user wchodzi na stronę, skrypt sprawdza wpisy w tabeli z userami online i wywala wszystkie starsze niż 300 sekund, przy okazji zaznacza w ich profilach czas ostatniej wizyty jako moment wyrzucenia z listy online. Jako nowe artykuły na wstępie zaznaczane są te, które zostały dodane ( lub skomentowane ) po czasie ostatniej wizyty usera. Tabelę userów poszerzyłem o kolumnę 'czytane_artykuly'. Kiedy user wchodzi do artyukułu i jest on nieczytany, informacja o tym zapisywana jest do tabeli:
Data wejścia jest dodana z uwagi na komentarze. Jeśli ktoś skomentował artykuł po czasie zapisanym w tabeli znowu jest nieprzeczytany. Tabelke od razu zapisuję do bazy w formie: , a odczytuję:
Kiedy user jest wymazywany z listy online, czyszczę pole 'czytane_artykuly' w bazie. Jak na razie wszystko działa ok. Dziękuję za odpowiedzi i pozdrawiam. ![]() Louner |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:13 |