ログインフォームに記憶機能を実装しようとしています。ユーザーがチェックボックスをオンにするか、var_dumping をオンにしないと、セッションの有効期限データが 63072000 を返します。それを設定できませんでした。理由がわかりません。
var_dump の方法:
var_dump($this->session->sess_expiration); // returning 63072000
フォーム ビュー:
<input name="rememberme" value="rememberme" type="checkbox" />
ログインモデル:
$rememberme = $this->input->post('rememberme');
if((!isset($rememberme)) || ($rememberme != "rememberme")){
$this->session->sess_expiration = 10800; // 3 hours
$this->session->sess_expire_on_close = TRUE;
}
$this->session->set_userdata($data);
セッション構成:
$config['sess_cookie_name'] = 'cisession';
$config['sess_expiration'] = 0;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie'] = TRUE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;