为我的web创建身份验证(目前即时将codeigniter用作我的php框架)。在codeigniter中使用sess_use_database时会话数据消失
为什么当我在$config['sess_use_database'] = TRUE;
我的会话数据的消失设定TRUE,并在页面的部分不显示。我试图显示登录到该网站的人的用户名。
当$config['sess_use_database'] = FALSE;
用户名显示在页面中。
任何人都会遇到这个问题?我该如何解决这个问题?
为我的web创建身份验证(目前即时将codeigniter用作我的php框架)。在codeigniter中使用sess_use_database时会话数据消失
为什么当我在$config['sess_use_database'] = TRUE;
我的会话数据的消失设定TRUE,并在页面的部分不显示。我试图显示登录到该网站的人的用户名。
当$config['sess_use_database'] = FALSE;
用户名显示在页面中。
任何人都会遇到这个问题?我该如何解决这个问题?
您需要创建一个数据库表来存储会话数据:
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(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text DEFAULT '' NOT NULL,
PRIMARY KEY (session_id)
);
然后设置$config['sess_table_name'] = 'ci_sessions';
在笨2,ci_sessions表需要略有不同。
具体USER_AGENT的规模已经从varchar 50去为varchar 120请确保您使用,如果你使用的是笨2这个基本原型sess_use_database
设置为TRUE:
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`)
);
这正是我将项目升级到Code Igniter 2后所遇到的问题 – acSlater 2012-08-16 14:19:44
我设置该表以及$ config ['sess_table_name'] ='ci_sessions'; 问题是当我设置$ config ['sess_use_database'] = TRUE;会话数据不会显示,但是当我将它设置为FALSE时。它会再次显示 – nhoyti 2011-06-03 06:00:52
“ci_session”表中的数据是否存在? – Pav 2011-06-03 06:01:50
你的意思是“ci_session表中的数据是什么?”对不起,请您重新说明您的问题吗?谢谢 – nhoyti 2011-06-03 06:11:08