perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From brett lee <brett...@yahoo.com>
Subject Re: Saving Session State
Date Wed, 06 Feb 2008 20:59:41 GMT

> 
Have 
tried 
using 
CGI::Session 
(3.95, 
4.10, 
4.20) 
but 
am 
continually 
seeing 
two 
issues 
that 
appear 
to 
still 
be 
open 
issues 
with 
the 
latest 
(is 
it 
the 
final?) 
release.

What 
issues 
are 
you 
having 
trouble 
with?  
Mark 
is 
one 
of 
the 
more
responsive 
CPAN 
authors 
around, 
and 
my 
experiences 
with 
CGI::Session
have 
been 
good.

--
That's excellent news - its probably operator error.

1.  First problem is that refreshing the screen often (not always) results in a new session
being generated:
http://rt.cpan.org/Public/Bug/Display.html?id=17299
With these failures, I can see the browser session in the filesystem, its not expired, but
it is not picked up with load().


2.  Other one is that I see new session ID's in the browser but not always on the server (filesystem):

http://rt.cpan.org/Public/Bug/Display.html?id=24285


Am using CGI.pm's  function-oriented style so I don't have a CGI object.  The 4.10 doc for
CGI::Session 4.10 shows saving params without an object, but when I try I get an error indicating
the first arg has to be an object.  So, am using the following: 

my $session = CGI::Session->load(undef, undef, {Directory=>'/tmp/sessions'});

if ( $session->is_expired ) {
  print "is_expired.<br>";
  $errmsg = "Your session expired. Please refresh your browser to re-start your session";
}
if ( $session->is_empty ) {
  print "is_empty.<br>";
  $session = $session->new(undef, undef, {Directory=>'/tmp/sessions'});
  $session->expire('+15m');
  $session->param('Auth', 'N');
  $session->save_param(undef,['Auth']);
}


Also, the 4.10 doc writes:
$session = new CGI::Session(undef, undef, {Directory=>'../tmp/sessions'});

I've tried "../tmp/sessions" and "/tmp/sessions".  Have never seen anything in "../tmp/sessions"
(relative to "/cgi-bin" or DOC ROOT) but I do see sessions (sometimes) appear in "/tmp/sessions".
 Happen to know if the syntax is relative (../), or absolute (/)?  Note that both of these
errors were seen in 4.x.  Never got the 3.95 to save an object, but just read that it needs
a flush().

Thanks much.













      ____________________________________________________________________________________
Looking for last minute shopping deals?  
Find them fast with Yahoo! Search.  http://tools.search.yahoo.com/newsearch/category.php?category=shopping

Mime
View raw message