Chcę przedłużyć czas sesji, aby zmienna sesji nie wygasła po 12 godzinach.
Problem polega na tym, że po 24 minutach (domyślny czas sesji, aż do wygaśnięcia) bezczynności nadal wygasa sesja, a zatem daje mi niezdefiniowane indeksy dla tych SESSION
zmiennych.
Co jeszcze muszę zrobić w swoim kodzie, aby móc przedłużyć sesje, aby nie wygasły same, aż upłynie 12 godzin:
Poniższy kod nie działa ini_set()
jest ponad session_start();
<?php
ini_set("session.gc_maxlifetime",12*60*60);
ini_set("session.cookie_lifetime",12*60*60);
phpinfo();
session_start();
// .... rest of code below
?>
Poniższy kod nie działa w ini_set () poniżej session_start ();
<?php
phpinfo();
session_start();
ini_set("session.gc_maxlifetime",12*60*60);
ini_set("session.cookie_lifetime",12*60*60);
// .... rest of code below
?>
W phpinfo()
, stwierdza to poniżej gc_maxlifetime
:
Local Value Master Value
session.gc_maxlifetime 43200 1440
session.cookie_lifetime 43200 0
Odpowiedzi:
2 dla odpowiedzi № 1Aktualnie ustawiasz tylko czas na wyrzucanie śmieci. Powinieneś także ustawić, aby cookie wygasł w przeglądarce za pomocą session.cookie_lifetime ustawienie lub session_set_cookie_params()
funkcjonować.