0

我是使用 codeigniter 的 php 新手。我对使用 codeigniter mvc 框架的 php 会话有疑问。当我使用 table(ci-sessions) 存储会话数据时,由于会话到期而无法登录我们的站点..

  1. 我已经在 Session 类中设置了var $sess_table_name = 'ci_sessions';& 。var $sess_use_database = TRUE;
  2. 我还在config.php 中设置了$config['sess_use_database'] = TRUE;& 。$config['sess_table_name']= 'ci_sessions';
  3. 我已经在数据库中创建了表,例如-

    如果不存在则创建表 ci_sessions( session_id varchar(40) DEFAULT '0' NOT NULL, ip_address varchar(45) DEFAULT '0' NOT NULL, user_agent varchar(120) NOT NULL, last_activity int(10) unsigned DEFAULT 0 NOT NULL, user_data文本非空,主键(session_id),键last_activity_idxlast_activity));

给出好的解决方案。

请帮我。

4

1 回答 1

0

关于会话到期,转到 application->config->config.php 并将 $config['sess_expiration'] 设置为零($config['sess_expiration']=0;)。这将取消会话到期。

关于将会话保存在表格中,请确保您的表格看起来像这样:

CREATE TABLE IF NOT EXISTS  `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(45) 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`)
);

当然,您可以向其中添加字段,但请记住该结构。

于 2013-03-20T13:31:17.363 回答