Foros del Web » Programación para mayores de 30 ;) » Programación General »

error con HTML::Template

Estas en el tema de error con HTML::Template en el foro de Programación General en Foros del Web. Hola, He instalado el módulo de perl HTML::Template version 2.8-2 en un fedora 5 con yumex. Luego he probado el ejemplo que viene en la ...
  #1 (permalink)  
Antiguo 02/05/2007, 08:51
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
error con HTML::Template

Hola,

He instalado el módulo de perl HTML::Template version 2.8-2 en un fedora 5 con yumex. Luego he probado el ejemplo que viene en la documentación del módulo, donde la sección 'synopsis', y obtengo el siguiente error:

[error] HTML::Template->new() : Cannot open included file test.tmpl :
file not found. at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Template.pm
line
1632\n\tHTML::Template::_init_template('HTML::Temp late=HASH(0x97495f4)')
called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Template.pm line 1205\ (...)

He leido algo sobre las variables de entorno HTML_TEMPLATE_ROOT y HTML_TEMPLATE_PATH, pero no termino de entender como hay que definirlas. Puede alguien ayudarme a solucionar este error?

Muchas gracias. Un saludo.
  #2 (permalink)  
Antiguo 02/05/2007, 09:06
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Re: error con HTML::Template

El error dice que no encuentra la plantilla del ejemplo, la test.tmpl. ¿La has puesto como pone la sinopsis?
  #3 (permalink)  
Antiguo 02/05/2007, 09:11
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: error con HTML::Template

Si, lo he copiado y pegado tal cual en dos archivos, que se encuentran en el mismo directorio.
  #4 (permalink)  
Antiguo 02/05/2007, 09:22
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: error con HTML::Template

Otra cosa, en la consola del entorno eclipse funciona sin problemas, es decir, me imprime las etiquetas del html cuando ejecuto el archivo .pl desde donde llama a test.tmpl. En cambio, si lo ejecuto con el navegador, me sale el error anterior.
  #5 (permalink)  
Antiguo 02/05/2007, 17:16
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Re: error con HTML::Template

Es posible que el script se esté ejecutando en un directorio de trabajo distinto al que reside.

En la indicación del nombre de la plantilla, pon el camino completo al fichero. Si eso no funciona, es posible que el fichero no tenga permisos de lectura para el usuario que ejecuta el servidor web.
  #6 (permalink)  
Antiguo 03/05/2007, 01:04
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: error con HTML::Template

Hola, he probado con el camino al fichero absoluto y he comprobado los permisos. De esta forma si me funciona, pero me interesaría poner los caminos relativos, se puede hacer de alguna forma?

Muchas gracias. Un saludo.
  #7 (permalink)  
Antiguo 03/05/2007, 01:30
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: error con HTML::Template

Hola de nuevo,

Para los paths relativos, he definido la variable $ENV{'HTML_TEMPLATE_ROOT'} al principio, dentro del script, con el path absoluto de la carpeta donde estan los templates. Y después, al definir con new() escribo el nombre del archivo y el path relativo a la variable anterior:

$ENV{'HTML_TEMPLATE_ROOT'}='/usr/local/apache2/htdocs/www/templates';
my $template = HTML::Template->new(filename => './start_templates/template1.tmpl');

De esta forma me ha funcionado.

Ahora bien, con HTML::Template solo he conseguido que interprete el codigo html de la plantilla, hay alguna forma de que también interprete código php de la misma plantilla??

Un saludo.
  #8 (permalink)  
Antiguo 03/05/2007, 02:24
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Re: error con HTML::Template

Hay un motor de PHP para Perl. Bueno, más de uno. Entra en CPAN y busca por PHP. Verás que hay algunas soluciones para interpretar PHP dentro de Perl.
  #9 (permalink)  
Antiguo 03/05/2007, 02:26
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Re: error con HTML::Template

Ahora que lo pienso... es algo más complicado de lo que parece, pues tu quieres que interprete PHP en la PLANTILLA, después de haber sido procesada por HTML::Template.

Como dice algún autor de los motores de PHP, quizás sea mucho más fácil pasar todo el código de PHP a Perl.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:08.