Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][AJAX]skrypt podczas zamykania przegladarki[/php]
--magier123--
post 24.09.2008, 13:50:11
Post #1





Goście







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
Go to the top of the page
+Quote Post
mike
post 24.09.2008, 13:52:32
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


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ę.
Go to the top of the page
+Quote Post
sowiq
post 24.09.2008, 15:45:18
Post #3





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 07:06