[caracas-pm] HTML::Template ¿Cómo retorno un valor pasado por un template como associate?

Alexis Arnal aarnal at me.gov.ve
Tue Sep 21 16:04:26 CDT 2004


Saludos, Ya resolví los problemas de los include colocandole rutas
relativas(tenía rutas absolutas), y con el archivo de configuración le
hago un require para pasar las variables que necesito.

Aún sigo tratando de implementar manejo de sesiones con
CGI::Session:Postgres, (hasta que entienda como trabajar con MOD_PERL y
usar Apache::Session). 

Leyendo de nuevo el manual de CGI::Session encontré que los valores de
session se pasan con Cookies(cosa que no deseo hacer) y tambien los
puedo pasar mediante el parámetro associate de HTML::Template de la
siguiente manera:

sub n1{
#----------------
#Leyendo Formulario
#----------------
use CGI::Session;
my $self=shift;
my $form_user=$self->query->param('usuario');
#----------------
#Creando sesión
#----------------
my $dbh = DBI->connect("dbi:Pg:dbname=sesion","$form_user","") or die
"\nError ($DBI::err): $DBI::errstr\n";
$session = new
CGI::Session("driver:PostgreSQL",$form_user,{Handle=>$dbh,TableName=>'sessions'});
$session->param('usuario',$form_user);
my $CGISESSID=$session->id();
$session->param('$CGISESSID',$CGISESSID);
#---------------
#Mostrando plantillas
#---------------
use HTML::Template;
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
my $template = HTML::Template -> new(filename => '2.html',
                                 path => '/var/www/html/pruebaCGI_app',
				 associate=>$session);
	
return $template -> output
}

Este código muestra la plantilla con el valor de la sesión, el problema
que tengo es que no entiendo como recupero la variable $session para
pasarla a una nueva plantilla.

Atte. Ing.Alexis Arnal MED. Caracas-Venezuela




More information about the caracas-pm mailing list