[英]Problems to run session over database with Codeigniter
我試圖通過表在數據庫上運行所有會話數據。 但是由於某種原因,當我嘗試將其設置為通過數據庫而不是“文件”運行時,它只是將其忽略。
這是我的配置:
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'sitecookie';
$config['sess_expiration'] = 2592000;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
和數據庫中的表:
CREATE TABLE `ci_sessions` (
`id` varchar(128) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) UNSIGNED NOT NULL DEFAULT '0',
`data` blob NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Indeks for tabel `ci_sessions`
--
ALTER TABLE `ci_sessions`
ADD PRIMARY KEY (`id`),
ADD KEY `ci_sessions_timestamp` (`timestamp`);
我已經嘗試了幾個小時才能弄清楚哪里出了問題,但是沒有運氣。 希望有人有什么想法...
我目前正在使用此代碼,它工作正常,沒有問題。 配置
$config['sess_driver'] = 'database';
$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'] = 7200;
$config['sess_regenerate_destroy'] = TRUE;
這是數據庫表。
CREATE TABLE `ci_sessions` (
`id` varchar(40) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) UNSIGNED NOT NULL DEFAULT '0',
`data` blob NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `ci_sessions`
ADD PRIMARY KEY (`id`),
ADD KEY `ci_sessions_timestamp` (`timestamp`);
COMMIT;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.