Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wygasanie sesji
Forum PHP.pl > Forum > Przedszkole
Jack Sparrow
Witam! Jak zrobic, zeby po jakims czasie nieaktywnosci(np. nie klikania w zadnen link) sesja wygasala, czyli zeby uzytkownik byl wylogowywany.
Kicok
session_set_cookie_params" title="Zobacz w manualu php" target="_manual

Tą funkcją możesz ustawić czas życia ciasteczka sesji. Tyle że najprawdopodobniej po tej zmianie nie będzie zamykało sesji po wyłączeniu przeglądarki
Jack Sparrow
a da sie to jakos zrobic, zeby sesja konczyla sie takze z zamknieciem przegladarki?
Ja_Szczur
raczej nie
php jako server-side nie może wiedzieć o zamknięciu przeglądarki, jeżeli ona sama mu tego nie powie :]

można kombinować z JavaScript i onWindowClose czy coś

tu jest coś na ten temat
Kicok
Ew. możesz sobie napisać swój własny system sesji.

System będzie tworzył dwa ciasteczka z identyfikatorem sesji. Jedno będzie wygasało przy zamknięciu przeglądarki, a drugie po określonym czasie. W przypadku braku któregokolwiek z tych ciastek sesja będzie tracona - czyli użytkownik zostanie wylogowany


Do tego zapisywanie zmiennych sesji do plików (serialize" title="Zobacz w manualu php" target="_manual, unserialize" title="Zobacz w manualu php" target="_manual), i kasowanie ich, gdy staną się już nieaktualne.


[EDIT]
Albo o wiele prostsze zadanie: Zrób normalną sesję, która kończy się po upływie określonej ilości czasu + dodatkowe ciasteczko tracące ważność po zamknięciu przeglądarki.
W php sprawdzasz czy ciastko jest - jeśli nie to sesję niszczysz.
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.