![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 5.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Próbuję stworzyć chat i z pewną rzeczą nie umie sobie poradzić. A więc użytkownik wchodzi na stronę i wymyśla sobie login. Login ten ląduje w bazie a user jest przekierowywany na stronę z czatem ogólnym gdzie dostaje ciasteczko. Wszystkie loginy ludzi aktualnie przebywających na czacie pobieram z bazy i wyświetlam na stronie. Żeby odbywało się to bez przeładowania wykorzystuję funkcję setInterval. Ciasteczko jest tak ustawione, że ginie po zamknięciu przeglądarki. I teraz najważniejsze - w jaki sposób przekazać informację do serwera że ciacho w jego przeglądarce już nie istnieje i usunąć użytkownika z listy zalogowanych użytkowników. Czy serwer/baza może sprawdzać u użytkowników czy mają na dysku mój plik cookies czy już zamknęli przeglądarkę? Nie wiem czy dobrze kombinuję... Ktoś pomoże? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 322 Pomógł: 15 Dołączył: 29.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak samo jak robisz listę userów aktywnych na stronie, możesz zrobić listę userów aktywnych na chacie.
W tabeli DB dodajesz usera który się loguje, a podczas wylogowania kasujesz tego usera z tabeli. Możesz również dać warunek który sprawdza czy user jest nieaktywny dłużej niż np. 1 minuta. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 5.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
OK, można by tak zrobić ale pewnie jest jakieś lepsze rozwiązanie. Fakt, że ktoś przez 1 minutę nic nie pisze nie oznacza że opuścił czat bo może tylko czytać co piszą inni i myślę że ma takie prawo nawet przez godzine... Na czacie wp czy onetu wygląda to tak, że mój login znika z listy dostępnych użytkowników w ułamku sekundy, dokładnie w tym momencie w którym zamykam okno przeglądarki... Ktoś wie jak to jest tam rozwiązane?
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 10:33 |