Я новичок в системе codeigniter. У меня проблема с сессионным временем со страницами. Прямо сейчас я включил с ip match, совпадением пользовательского агента, но не работает. Еще один способ, который я пробовал, обновил файлы библиотек 2.1.4 и скопировал их в свои системные папки, но это тоже не сработало.
Пожалуйста, помогите мне решить проблему тайм-аута сессии. Следующий код, который я использовал в config-> config.php.
$config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 10; $config['sess_expire_on_close'] = TRUE; $config['sess_encrypt_cookie'] = FALSE; $config['sess_use_database'] = FALSE; $config['sess_table_name'] = 'ci_sessions'; $config['sess_match_ip'] = TRUE; $config['sess_match_useragent'] = TRUE; $config['sess_time_to_update'] = 10;
Мне нужно увеличить время ожидания сеанса, но теперь мне нужно проверить, работает ли время сеанса, или нет. Если это 10 секундное время сеанса работает, я могу увеличить время сеанса.
Спасибо заранее, пожалуйста, помогите мне.
Наконец я нашел решение проблемы.
Следующие способы увеличить или уменьшить время сеанса. 1.
ini_set('session.gc_maxlifetime', 60); config->config.php $config['sess_expiration'] = ''; //in seconds.
2.
$config['sess_time_to_update'] = '' ;//in seconds (as same in sess_expiration seconds)
3.Если вы проверяете контроллер входа и весь контроллер для данных сеанса как
$_SESSION['data'] == 'your login id or role or something
.Это не приводит к истечению сеанса сеанса datas.but, мы должны проверить чек с помощью $this->session-> userdata('your id or data need to check')
и до того, как один раз войти в систему успешно, тогда необходимо присвоить значение сеанс как $this->session->set_userdata('your id or something');
в то время как проверка session = $this->session->userdata()
пуста или нулевая потребность в session_destory()
а затем необходимо перенаправить на вашу домашнюю страницу. Другой способ увеличить:
Эти два способа я пробовал, и я нашел решение для сеанса.
Спасибо всем.
если в вашей базе данных нет таблицы ci_sessions, создайте ее, используя следующий скрипт.
CREATE TABLE IF NOT EXISTS `ci_sessions` ( session_id varchar(40) DEFAULT '0' NOT NULL, ip_address varchar(16) DEFAULT '0' NOT NULL, user_agent varchar(120) NOT NULL, last_activity int(10) unsigned DEFAULT 0 NOT NULL, user_data text NOT NULL, PRIMARY KEY (session_id), KEY `last_activity_idx` (`last_activity`) );
используйте $this->session->set_userdata($array);
для получения данных сеанса. Затем он должен работать должным образом