|
I looked into Session.pm and MySQL.pm for details.
For some reason, the following line (line# 83) in MySQL.pm doesn't seem to happen:
$dbh->do(qq|DELETE FROM $TABLE_NAME WHERE id=?|, undef, $sid);
load() returns an empty session but the expired sessions are still in MySQL's sessions table.
$session = CGI::Session->load("driver:MySQL", $cgi, {Handle=>$dbh}) or die CGI::Session->errstr();
I am using CGI::Session 4.36.
Logout works with the following code:
if ($cgi->param('action') eq 'logout') {
$session = CGI::Session->load("driver:MySQL", $cgi, {Handle=>$dbh}) or die CGI::Session->errstr;
$session->delete();
$session->flush();
}
I emailed the author but did not get a repsponse.
Did anyone have the same problem and get it resolved? |