Также это можно сделать, отредактировав / расширив системную библиотеку сеансов.
Первое: В функции входа пользователя добавьте запомнить меня check-
if($remember)
{
$data['new_expiration'] = 60*60*24*30;//30 days
$this->session->sess_expiration = $data['new_expiration'];
}
$this->session->set_userdata($data);
Второе: Редактировать системную библиотеку сеансов [Я не уверен, будет ли работать расширение сеанса или нет]
Перейти к этой строке в sess_read()
метод
if (($session['last_activity'] + $this->sess_expiration) < $this->now)
Перед этой строкой добавить следующий код
if(isset($session['new_expiration'])){
$this->sess_expiration = $session['new_expiration'];
}
Это прекрасно работает для меня.