storing data in session variable

Rakish's Avatar, Join Date: Jul 2006
Go4Expert Member
I want to store the username and login_id in the session .

i am tryin to do this.

Code:
$session = $q->cookie(-name=>$session->name,-value=>$session->id); #session cookie
                 $session{"username"}   =        $q->param("$usernameVar");
                 $session{"login_id"}   =        $q->param("$login_id");
                 $cookie13 = $q->cookie(-name=>'login_id',-value=>$login_id); #cookie 1
                 print $q->header(-location=>'show_profile.pl',-cookie=>[$cookie13,$session]);
Software error:
Quote:
Global symbol "%session" requires explicit package name at /var/www/cgi-bin/catalog/testlogin.pl line 145.
Global symbol "%session" requires explicit package name at /var/www/cgi-bin/catalog/testlogin.pl line 146.
Execution of /var/www/cgi-bin/catalog/testlogin.pl aborted due to compilation errors.
I have defined the session variable as:

Code:
my $session;
if i just write

Code:
$session = $q->cookie(-name=>$session->name,-value=>$session->id); #session cookie
$cookie13 = $q->cookie(-name=>'login_id',-value=>$login_id); #cookie 1
print $q->header(-location=>'show_profile.pl',-cookie=>[$cookie13,$session]);
it works fine by just sending session cookie to the HTTP header.

Please help.

Rakesh

Last edited by Rakish; 25Aug2006 at 22:13..
0
naveen's Avatar
Go4Expert Member
Hi,
Code:
$session{"username"}   =        $q->param("$usernameVar");
$session{"login_id"}   =        $q->param("$login_id");
Instead of this, try the following...

Code:
$uname=$q->param("$usernameVar");
$id=$q->param("$login_id");
$session.=$uname.$id;
Keep the rest of the code same.
0
pradeep's Avatar, Join Date: Apr 2005
Team Leader
Here is a code snippet which show how to store data into the session.

Code: Perl
use CGI::Session;
 
 $session = new CGI::Session();
 
 #save data to the session
 $session->param('username') = $q->param("$usernameVar");
 $session->param('login_id') = $q->param("$login_id");
 
 #create session cookie
 $session_cookie = $q->cookie(-name=>$session->name,-value=>$session->id); #session cookie
 $cookie13 = $q->cookie(-name=>'login_id',-value=>$login_id); #cookie 1
 
 print $q->header(-location=>'show_profile.pl',-cookie=>[$cookie13,$session]);
0
Rakish's Avatar, Join Date: Jul 2006
Go4Expert Member
Thanks Pradeep,