Problem in Session Accessing

[email protected] (Praki)
Newsgroups perl.beginners.cgi
Organization http://groups.google.com
Message-ID <78d0de87-07e8-4143-bd62-6c6171bbaa4d@d21g2000prf.googlegroups.com>
Greetings All,

i m creating a session storing the loging credentials. i want to
access that data later after crossing two pages.i have created the
sesion but i could not get the data back some where i m going wrong
can u point me where ..


my first first file getting the login credentials


#!/usr/local/bin/perl5
&top();
&login_check();
&bottom();
sub top{
print <<EOM1;
Content-type: text/html


<html>
  <head>
    <title>Login Authentication</title>
  </head>
<body>
EOM1


}


sub bottom{
print <<EOM2;
</body>
</html>
EOM2

}


sub login_check{
print <<EOM;
<h3>Enter the login Password</h3>
<form  method="post" action="cookie.cgi">
<input type="hidden" name="username"  value='Submit'>
<p>Username: <input type="text" name="uid" size="20"></p>
<p>Password: <input type="password" name="passwd" size="20"></p>
<input type="submit" value="Submit" name="submit">
</form>
EOM


}


second file where i m creating the session.

#!/usr/local/bin/perl5
use Net::LDAP;
&top();
&login_check();
&bottom();


sub top{
  print <<EOM1;
Content-type: text/html


<html>
  <head>
    <title>Login Authentication</title>
  </head>
<body>
EOM1


}


sub bottom{
  print <<EOM2;
</body>
</html>
EOM2

}


sub login_check{
  my ($ret);
  use CGI;
  my $query = new CGI;
  $query->param("submit");
  my $userid = $query->param("uid");
  my $password = $query->param("passwd");
use CGI;
use CGI::Session;

$session = new CGI::Session("driver:File",undef,{'Directory'=>"/
tmp"});
$sid = $session->id();
print "Session id:".$sid;


#$session->name($userid);
# Write the session variable on the server
$session->param('username',$userid);
$session->param('password',$password);
print "username:".$userid."pass:";


$usernam = $session->param('username');
$passwor = $session->param('password');


print "username from the cookie:".$usernam;


#create session cookie
$cookie = $query->cookie(CGISESSID => $session->id);
print $query->header( -cookie=>$cookie );
#print "cookie:".$cookie;
   print <<EOM;
      <h5>Cookie created  <a href="/cgi-bin/sesion/cookie/
test.cgi">click here to check</a> </h5>
EOM



}


Third file to access the session values.

#!/usr/local/bin/perl5
&top();
&cookie_check();
&bottom();
sub top{
print <<EOM1;
Content-type: text/html


<html>
  <head>
    <title>Login Authentication</title>
  </head>
<body>
EOM1


}


sub bottom{
print <<EOM2;
</body>
</html>
EOM2

}


sub cookie_check{
use CGI;
use CGI::Session;
my $query = new CGI;

$sid = $query->cookie('CGISESSID') || $query->param('CGISESSID') ||
undef;
$session = new CGI::Session(undef, $sid, {Directory=>'/tmp'});
$username = $session->param('username');
$password = $session->param('password');


print <<EOM;
<h3>Cookie test  $username $password</h3>
EOM



}


i m not getting the values when  i read here. i dont know where the
cookie is created. i check with the server i  could see the session
which is created in the server.please tell me where i m going
wrong.....

thanks in advance..
Prakash
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.