Zend_Session_SaveHandler_DbTable不产生合法的会话ID?
-
19-09-2019 - |
题
目前,我正在撕裂我的头发试图通过数据库基础会话持续验证。 我已经设置了Zend_Session使用一个数据库,并在检查,Zend公司值写入到数据库中。然而,对于那些会话ID似乎并不匹配PHPSESSID - 然而,当我得到了Zend_Session返回ID - 它返回一个匹配值。
所以 - 我在DB我有:
ID.....MODIFIED.......LIFETIME...DATA
344..1265640083.......1440.......BLAH
然而,如果我打电话从Zend的会议本身...的ID
$id = Zend_Session::getId();
echo $id; // mbgspg2gvf1c3r9l7qpv6orgt4
我假定被Zend会话生成的ID必须匹配PHPSESSID的,正确?
下面是我的引导
$dbAdapter = $resource->getAdapter();//connection is tested and working
Zend_Registry::set("db", $dbAdapter);
$config = array(
'name' => 'sessions',
'primary' => 'id',
'modifiedColumn' => 'modified',
'dataColumn' => 'data',
'lifetimeColumn' => 'lifetime',
'db' => $dbAdapter
);
Zend_Session::setSaveHandler(new Zend_Session_SaveHandler_DbTable($config));
Zend_Session::start();
我将永远感激,如果有人能在这一个闪耀光芒的人......
解决方案
好吧,我狼狈。我改变了表类型InnoDB和现在的作品。
在我的防守 - 在主文档中并没有规定InnoDB的:的 http://framework.zend.com/manual/en/zend.session.savehandler.dbtable.html
,而这里它的作用: HTTP://framework.zend。 COM /维基/显示/ ZFPROP / Zend_Session_SaveHandler_DbTable?showComments =假
我祈祷这就是固定它。也许当地的错误在我的Apache?
不隶属于 StackOverflow