sub get_session_from_user { my $class=shift; my ($sid, $s); $sid = CGI->cookie( 'session' ); return undef unless ($sid); $sid=~s/[\W]//g; $s=CGI::Session->load("driver:sweet" , $sid , { Handle=>$class->{ddb} }) or return undef; if ($s->is_expired) { $s->delete(); return undef; } if ( $s->is_empty ) { # $s->delete; # return undef; $s = $s->new("driver:sweet" , undef , { Handle=>$class->{ddb} } ) or die $s->errstr; } $class->{session}=$s; return 1; }