Chcę utworzyć interfejs dla administratorów, aby zmienić limit czasu sesji w mojej aplikacji. Wartość limitu czasu będzie przechowywana w DB.
Po zmianie wartości limitu czasu sesji:
$duration = (int) $this->session_duration;
Yii::app()->session->setTimeout($duration);
Yii::app()->session->setCookieParams(array("lifetime" => $duration));
i niż echo jego wartości, i wszystko wygląda dobrze, dopóki nie odświeżam strony, i wtedy dostaję starą wartość limitu czasu sesji, a także czas życia ciasteczek.
Co jest najlepszym miejscem w Yii do sprawdzania poprawności limitu czasu sesji
if (time() - Yii::app()->session->get("LAST_ACTIVITY", 0) > Yii::app()->sesstings["session_timeout"]) {
Yii::app()->session->destroy();
}
Yii::app()->session->get("LAST_ACTIVITY") = time();
Używam CHttpSession
jako składnik sesji
Dzięki
Odpowiedzi:
-1 dla odpowiedzi nr 1- Użyj go w index.php (ostatnia linia)
- Użyj ini_set i ustaw wartość na "session.cache_expire"