我有一个用户登录管理面板(后端)和joomla网站的前端。我检查了数据库中的会话表,发现已为该用户创建了一个会话。我刚刚从DB中删除了该行,当我转到管理面板(后端)时,用户已注销,这是正确的。 但是当我转到网站的前端时,用户没有注销。所以我的问题是“是否为同一用户的前端和后端维护了单独的会话?”如果是这样那么为什么我没有在DB的会话表中找到2个会话行?前端会话是否存储在单独的表中?
还有一种方法,当我点击退出按钮时,我从网站的后端和前端退出了吗?
答案 0 :(得分:0)
我认为这是因为从#__session
表中删除行并不能完全清除会话。手动注销时,会调用Session类并销毁会话,例如:
$session = JFactory::getSession();
$session->destroy();
执行此操作还会将会话状态设置为destroyed
:
$this->_state = 'destroyed';
因此,您需要使用PHP而不是从数据库中删除表
答案 1 :(得分:0)
前端和后端是两个独立且独立的应用程序。因此,您可以登录其中一个或两个并具有单独的会话。也可以共享会话,但这需要一些工作。对我来说奇怪的是你只在表格中看到过一个会话。你是积极的吗?你检查了客户价值吗?