Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

CGI::Session reloading

by gwhite (Friar)
on Oct 20, 2008 at 12:56 UTC ( #718212=perlquestion: print w/replies, xml ) Need Help??
gwhite has asked for the wisdom of the Perl Monks concerning the following question:

I am self taught so sometimes I just don't get what the doc is saying if it gets over my head. I am trying to use CGI::Session, I have an 8 page input form, but during the loading of form page 5 I need several of the variables from previous pages to determine what questions should be shown, and at the end I need everything pulled in to process. I would like to use something along the lines of the CGI command param(), where I can on one line just load a hash with all the values stored in the session. Is that possible? Here is how I use CGI:

my $input = new CGI(); my %hash = map { $_, $input->param($_) } $input->param();
All the examples in CGI::Session::Tutorial load a specific value, no examples just slurping in everything. So with CGI::Session I have tried to do a load_param() like this and it doesn't seem to take.
$session = CGI::Session->load() or die CGI::Session->errstr; $input = $session->load_param(); # $input is my existing cgi object my %hash = map { $_, $input->param($_) } $input->param();
What do I need to get all my session variables loaded into a hash?


Replies are listed 'Best First'.
Re: CGI::Session reloading
by moritz (Cardinal) on Oct 20, 2008 at 13:04 UTC
    It seems you need my $d = $session->dataref, which returns a hash reference. Calling keys %$d on that one gives you the list of all session keys.

      OK, got it, thanks.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://718212]
Approved by Corion
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (3)
As of 2018-04-26 02:13 GMT
Find Nodes?
    Voting Booth?