En esta Pagina1.cgi, trato de guardar el $user a una session. Diganme, ¿es necesario usar Cookies? ... bueno, solo necesito que se guarde ese dato en session, nada más. Luego en la pagina2.cgi quiero recuperar ese valor guardado en session, pero no me sale el valor. Diganme en que estoy fallando o cual es la mejor manera de solucionar este problema, por favor, necesito ese apoyo urgente, agradeceria mucho su ayuda ....
Saludos
Fausto C.
Pagina1.cgi
- Código: Seleccionar todo
#!/usr/bin/perl
use CGI qw(:standard);
$cgi = new CGI;
use CGI::Session;
$path_session = "/home/user/";
$user = "Fausto Cardenas";
my $cookie = "";
$session = new CGI::Session("driver:File",undef,{'Directory'=>"$path_session"});
if ($q->cookie('CGISESSID')) {
$cookie = $cgi->cookie('CGISESSID');
$session->id($cookie);
}else{
$cookie = $cgi->cookie(-name=>'CGISESSID',-value=>$session->id());
}
unless ($session->param('fecha')){
$session->param(-name => 'fecha' , -value => scalar(gmtime()));
}
$session->param('login',"$user");
$session->expire('+1m');
$sid = $session->id();
$session->save_param($cgi, ["login"]);
print STDOUT "Content-type: text/html \n\n";
print STDOUT "Hola mundo cruel";
print STDOUT $user;
print STDOUT "<a href=session3.cgi?sid=$sid>pagina 2</a>";
pagina2.cgi Aqui no sale la session....
- Código: Seleccionar todo
#!/usr/bin/perl
use CGI qw(:standard);
use CGI::Session;
$path_session = "/home/user/";
$form = new CGI;
$scookie = $form->param('sid');
#CGI::Session->name($scookie);
CGI::Session->name('sid');
$session = new CGI::Session("driver:File",$scookie,{'Directory'=>"$path_session"}) or die "$!";
$login = $session->param('login');
#CGI::Session->name($id);
#$sid = $cgi->cookie("CGISESSID") || undef;
#$session = new CGI::Session(undef, $sid, {Directory=>'/tmp'});
print STDOUT "Content-type: text/html \n\n";
print STDOUT "Hola mundo cruel";
print STDOUT $login;