2010-02-08 4 views
1

Je suis en train de m'arracher les cheveux en essayant de persister l'authentification via une session de bases de données. J'ai défini Zend_Session pour utiliser une base de données, et lors de l'inspection, Zend écrit des valeurs dans la base de données. Toutefois, l'ID de ces sessions ne semble pas correspondre à PHPSESSID - mais lorsque j'obtiens Zend_Session pour retourner l'ID - il renvoie une valeur correspondante.Zend_Session_SaveHandler_DbTable ne génère pas d'ID de session valide?

Alors - dans mon DB J'ai:

ID.....MODIFIED.......LIFETIME...DATA 

344..1265640083.......1440.......BLAH 

Pourtant, si je l'appelle l'id de session Zend lui-même ...

$id = Zend_Session::getId(); 
echo $id; // mbgspg2gvf1c3r9l7qpv6orgt4 

Je suppose que l'ID généré par session Zend doit correspondre à celle du PHPSESSID, correct?

Voici mon bootstrap

$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(); 

Je serai éternellement reconnaissant si quelqu'un peut faire la lumière sur celui-ci ...

Répondre

Questions connexes