sprawdzanie czy user jeszcze jest

0

w coyocie jest tabela session przechowująca aktualnych użytkowników. coś podobnego chciałbym zrobić u siebie. Tylko jak stwierdziś, że user sobie poszedł w długą?? Wiem, że jest taka funkcja, tylko nie pamiętam jej nazwy... może są inne sposoby?

0

jeśli po kilkunastu minutach nie wejdzie na jakąś stronę, to znaczy że poszedł precz (albo się zastanawia nad postem ;-)).

0

Hmm... Z tego co wiem, jest to niemożliwe. Jedyne, co możesz zdziałać, to sobie ustawić jakiś limit czasu, po którym uznajesz, że nie ma go na stronie, jeśli żadnego zapytania nie wysłał. A jest to niemożliwe, gdyż przeglądarka nie ma powodu, by wciąż coś do serwera wysyłać, a serwer często nie ma fizycznie możliwości wysłać żadnego zapytania do klienta. Jedynie jeszcze możesz na stronce dać jakiś skrypcik JS, który w momencie, kiedy ktoś ma otwartą stronę i czyta/myśli/pisze i nic nie wysyła, wysyłałby co czas określony jakieś info do serwera. Ale domyślam się, że to wkurzałoby użytkowników, bo opóźnia sieć, wysyła jakieś dziwne zapytania, a praktycznie nie jest potrzebne. Na forum phpBB masz otwarcie napisane, że "użytkownicy obecni na forum", to użytkownicy, którzy wysłali jakieś zapytanie w przeciągu ostatnich (domyślnie) 5 minut.

0

Masz plik:
login;czas ostatniej aktywnosci
Jesli chcesz wiedziec, czy user jest, to pewnie to pokazujesz ;]
W skrypcie, gdzie to pokazujesz, daj
Jechanie po pliku w poszukiwaniu np. loginu
Jesli user znajdzie swoj login, to zamienia czas ostatniej aktywnosci na aktualny czas
Jesli nie to dopisuje
Kazda linie z pliku sprawdza, czy czas < aktualnego-3min np.
Jesli jest mniejsze, to usuwa wpis z pliku, jesli nie- to nie.
(Rownie dobrze mozna takie cos robnic na kazdym pliku/przy kazdym zapytaniu, gdzie chcesz)

1 użytkowników online, w tym zalogowanych: 0, gości: 1