我有一个问题。我正在使用codeigniter处理一个项目我在会话变量中发送了一些值,并且在除了Vodafone互联网连接之外的所有设备和网络中都能正常工作。
表示EX。
$this->session->set_userdata('id','5');
echo $this->session->userdata('id');
这不适用于移动设备只有移动休息的沃达丰互联网才能在所有网络上正常运行。任何解决方案?
答案 0 :(得分:1)
确保您还有加载库
在__construct
$this->load->library('session');
或
在autoload.php
$autoload['libraries'] = array('session');
答案 1 :(得分:1)
Codeigniter文件会话不适用于移动设备,而不是文件,您应该在数据库中保存会话。首先在数据库中创建表并更改配置文件中的某些行。
CREATE TABLE IF NOT EXISTS `ci_sessions` (`id` varchar(40) NOT NULL,`ip_address` varchar(45) NOT NULL,`timestamp` int(10) unsigned DEFAULT 0 NOT NULL,`data` blob NOT NULL,PRIMARY KEY (id),KEY `ci_sessions_timestamp` (`timestamp`));
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_sessions';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;