Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: Using Sessions to save Parameters

by ikkon (Monk)
on Aug 02, 2007 at 14:19 UTC ( #630284=note: print w/replies, xml ) Need Help??

in reply to Using Sessions to save Parameters

oh I got it to work for the most part, there seemed to be alot of little things I was misses took some trial and error but I got it heres the code just incase someone might need it.
use CGI; use CGI::Session; use strict; my $q = new CGI; print $q->header( "text/html" ); #--------------------------------------# #------------- Variables --------------# #--------------------------------------# my %valueHash; my %newHash; GrabParams(); my $session; my $SID; #--------------------------------------# #---- New/Open Session Condition ------# #--------------------------------------# if ($valueHash{"sessPass"} == 1) { $session = new CGI::Session(undef, undef, {Directory=>'tmp/ses +sions'}) or die CGI::Session->errstr; #--> creates a CGI::Session Obj +ect for use $SID = $session->id; }else{ $session = new CGI::Session(undef, $valueHash{"session"}, {Dir +ectory=>'tmp/sessions'}) or die CGI::Session->errstr; #--> Open sessi +on my %newHash = %{$session->param('valueHash')}; #--> load sessi +on hash and save it into a new hash (had to derefference it first wit +h %{}) #--> Loop through the load hash and push the values into value +Hash #--> so the new and old parameters are in one hash #------------------------------------------------------------- +------> while (my($k, $v) = each(%newHash)) { $valueHash{$k} = $v; printf("<br>key: %s value: %s", $k, $v); } #--> After loading session variables and setting them to the n +ew variables in valueHash #--> we need to clear the session hash values so we can rewrit +e the new values #------------------------------------------------------------- +--------------------------> $session->clear(); } $session->param('valueHash', \%valueHash); $session->flush(); #--------------------------------------# #------------ Functions ---------------# #--------------------------------------# sub GrabParams{ my ( $paramName, $paramValue); foreach $paramName ($q->param) { foreach $paramValue ($q->param( $paramName )) { $valueHash{ $paramName } = pack 'U0A*', $paramValue; } } }
thanks for everyones help for pointing me in the right direction.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://630284]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2018-05-27 14:23 GMT
Find Nodes?
    Voting Booth?