Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Długość sesji i niszczenie jej w przypadku przekroczenia czasu
Majkelo23
post
Post #1





Grupa: Zarejestrowani
Postów: 226
Pomógł: 17
Dołączył: 13.02.2012

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


W jaki sposób zdefiniować długość sesji? Chodzi mi o przypadek, że jeśli user jest zalogowany na stronie, ale nie przeładowywał strony od ponad X czasu (załóżmy 30 minut) to jego sesja zostaje zniszczona i jeśli znów odświeży stronę po upływie tego czasu to będzie już wylogowany? Obecnie używałem czegoś takiego:

  1. $session_time = 35; // in minutes
  2. session_set_cookie_params(($session_time*60));


ale wydaje mi się, że to działa w taki sposób, że niezależnie czy jestem aktywny cały czas (odświeżam stronę) czy też nie - zawsze po 30 minutach mnie wyloguje (sesja jest niszczona). Czy tak to działa?
Znalazłem w manualu coś takiego: session_cache_expire($nowy_czas), ale czy to jest na pewno to o co mi się rozchodzi?
Go to the top of the page
+Quote Post
Turson
post
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Musiałbyś zapisywać ostatnią aktywnośc użytkownika, a potem przy przeładowaniu strony porównywać czas i ewentualnie wylogować
Go to the top of the page
+Quote Post
Majkelo23
post
Post #3





Grupa: Zarejestrowani
Postów: 226
Pomógł: 17
Dołączył: 13.02.2012

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


Czytałem, że PHP samo wylogowuje po 24min nieaktywności, ale czy to jest prawda?
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


To nie jest prawda.
Go to the top of the page
+Quote Post
jackraymund
post
Post #5





Grupa: Zarejestrowani
Postów: 217
Pomógł: 21
Dołączył: 10.06.2011
Skąd: Głogów

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


Cytat(Majkelo23 @ 26.11.2013, 22:44:14 ) *
Czytałem, że PHP samo wylogowuje po 24min nieaktywności, ale czy to jest prawda?

Tak jest domyślnie jest ustawione.
Dokładniej session.gc_maxlifetime. php_ini
Najlepiej przestaw to w samym php.ini, nie wywołując komende.(wywołasz skrypt bez tej lini i może być psikus)

Ten post edytował jackraymund 27.11.2013, 10:09:27
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 19:42