voytass
8.05.2005, 16:52:38
czesc,
mysle o wprowadzeniu w serwisie mozliwosci wyswietlania aktywnych uzytkownikow (tych co sa zalogowani). rozwiazanie jakie mi przychodzi do glowy to:
1. uzytkownik sie loguje i system odnotowuje to w bazie
2. uzytkownik sie wylogowywuje i system odnotowuje to w bazie
i tak to ladnie dziala
ale wiadomo, trzeba si eprzygotowac na rozne sytuacje
jak powinno sie podejsc do sprawy gdy uzytkownik zamknie okno przegladarki bez wylogowania programowego? jak zbada czy uzytkownik jest jeszcze czy juz 'wyszedl'
przy podejsciu podanym w powyzszych 2 punktach slad w bazie o obecnosci bedzie caly czas... i tu mam problem.
maker
8.05.2005, 16:56:09
Nie jest to moze najlepszy sposob ale ja bym zrobil to tak:
Logowanie zmienia pole czas na obecny ( time() )
Każde przeładowanie strony też
A wyswietlanie zalogowanych uzyskujesz pobierając rekordy ktore spelniaja warunek >= time()-300
matid
8.05.2005, 16:57:18
Dodaj sobie w bazie danych, w tabeli z użytkownikami dodaj sobie pole, które będziesz co każde odświeżenie strony aktualizował i wprowadzał tam aktualny czas (timestamp).
Teraz jeśli będziesz chciał wyświetlić aktualnie zalogowanych to sobie wyświetlaj tych, którzy byli aktywni przez ostatnie powiedzmy 5 minut.
voytass
8.05.2005, 17:14:53
to jest dobre rozwiazanie, tylko przy duzej liczbie uzytkonikow bedzie duza liczba UPDATE
a czy jest mozliwosc (mysle na 'goraco') uzyskania takiej informacji o obecnosci uzytkonika z SIDa z sesji?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.