Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][AJAX]skrypt podczas zamykania przegladarki[/php]
Forum PHP.pl > Forum > Przedszkole
-magier123-
Witam
Szukalem i nie znalazlem. Potrzebuje podpowiedzi jak wykonac cos takiego aby jak ktos nacisnie X zeby zamknac przegladarke wyskoczyl alert z informacja zeby naciskac przycisk wyloguj (to wiem jak zrobic), ale zeby w miedzyczasie robil sie wpis w bazie np zmieniajacy 1 na 0 (uzytkownik online, offline).
Temat byl juz omawiany tutaj

http://forum.php.pl/index.php?showtopic=83463

ale ten AJAX nie dziala
mike
Proponowanych psełdorozwiązań tego problemu jest wiele. Każde czasem działa lub nie. Część działa zależnie od przeglądarki i takie tam.
Jedna pewna odpowiedź na to to: nie da się.
sowiq
Na pewno nie możesz zrobić czegoś takiego, że ktoś chce zamknąć okno przeglądarki, a Ty mu nie pozwalasz.

Ale możesz wykonać operację przed zamknięciem okna. Służy do tego trigger onUnload(). Sprawdziłem przed chwilą, wykonuje się w FF 3.01, IE 6 i 7. Z Operą jest problem, ale na jej stronie piszą o tym, więc pewnie da się to obejść.

Tylko jest pytanie, czy user będzie miał takie szybkie łącze, żeby w krótkiej chwili wysłać zapytanie Ajax z prośbą o wylogowanie. Ale próbuj - nie ma rzeczy nieosiągalnych winksmiley.jpg


Zresztą - zawsze możesz to zrobić w inny sposób. Powiedzmy, że ustawiasz setInterval() na 60 sek. Co 60 sekund idzie zapytanie do serwera mówiące, że user jeszcze jest zalogowany. Tak na prawdę idą same nagłówki, więc nie obciąża to łącza strasznie. Jak ktoś zamknie przeglądarkę, to zapytania przestaną się wysyłać. Powiedzmy, że sprawdzasz na serwerze i jeżeli user był nieaktywny przez 80 sek, to logout smile.gif Też jest to jakiś sposób.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.