3
Seems to be the case. I tried what you suggested and it did work, but it does a pose a problem, because now I need to reset the session handlers again, not a big deal if your using custom handlers anyway.
The below was a quick fix for me at the moment:
$sd = someFunctionToGetSessionData();
//returns the field from the db
function read($id){global $sd; return $sd;}
function open($save_path, $session_name){return(true);}
function close(){return(true);}
function write($id, $sess_data){return true;}
function destroy($id){return true;}
function gc($maxlifetime){return true;}
session_set_save_handler("open", "close", "read", "write", "destroy", "gc");
session_start();
$data = $_SESSION;
session_destroy();
The difference between the two for those interested is that php seems to save:
xoopsUserId|s:1:"2";xoopsUserGroups|a:5:{i:0;s:1:"2";i:1;s:1:"4";i:2;s:1:"5";i:3;s:1:"6";i:4;s:1:"7";}xoopsUserTheme|s:11:"7dana-clean";
Where a true serialize saves something like :
a:3:{s:11:"xoopsUserID";s:1:"2";s:15:"xoopsUserGroups";a:4:{i:0;s:1:"2";i:1;s:1:"4";i:2;s:1:"5";i:3;s:1:"7";}s:14:"xoopsUserTheme";s:11:"7dana-clean";}
I wonder why the session handler isn't using serialize for saving inside php... I'll post with them.