2011-09-20 134 views
0

我在使用Codeigniter会话时遇到问题,每次刷新系统页面时,都会创建另一个会话,并使用另一个ID继续复制数据库会话,每当新页面加载新会话时它被创建。Codeigniter会话问题

那是我的配置阵列:

$config['sess_cookie_name'] = 'ssessions'; 
$config['sess_expiration'] = 7200; 
$config['sess_expire_on_close'] = FALSE; 
$config['sess_encrypt_cookie'] = FALSE; 
$config['sess_use_database'] = TRUE; 
$config['sess_table_name'] = 'ssessions'; 
$config['sess_match_ip'] = FALSE; 
$config['sess_match_useragent'] = TRUE; 
$config['sess_time_to_update'] = 300; 

当它创造了新的会话,它拥有所有的旧变量,但有自己的价值观空。 有人有解决方法吗? (我正在使用CI 2.0)

+0

你可以发布一些你的代码吗?你的会话被破坏了吗? –

+0

确保你的ssessions表是MyISAM,而不是InnoDB。 – Jawaad

回答

0

我不知道dbsessions是否是您的开发需求的一部分,但我试过使用它,它似乎不可靠。他们喜欢失败。

为了解决这个问题,我使用了Native Sessions库,它看起来工作得很好。您可能会发现访问http://codeigniter.com/forums/viewthread/103583/的更多信息。这是CI 1.5的设计,虽然你可以找到一些调整,使其工作在CI 2.0。