从2.x更新到codeigniter 3.x后,我开始遇到以下问题
Error Number: 1146
Table 'databaseName.prefix_' doesn't exist
UPDATE `prefix_` SET `last_activity` = 1446185100, `user_data` = 'a:2:{s:9:\"user_data\";s:0:\"\";s:13:\"flash:new:msg\";s:96:\"
Invalid username and password or Organization!
\";}' WHERE `session_id` = '9a1bb9c4241d7ee2af0fc3384e7852f9'
Filename: libraries/Session.php
Line Number: 305
我已经更新了配置文件,我的会话配置变量如下
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
答案 0 :(得分:1)
您必须在数据库中创建表
运行此查询
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`)
);
在application/config/config.php
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE; # change this to TRUE
$config['sess_table_name'] = 'ci_sessions'; #table name
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
确保您的数据库已连接。