Página 1 de 1

Resultado de HTML::Template

NotaPublicado: 2005-09-12 13:42 @612
por lalo75
Buenos tardes.

Soy nuevo programando en Perl.

¿Cómo puedo guardar el valor de una variable HTML::Template en un archivo plano?

NotaPublicado: 2005-09-12 14:53 @662
por explorer39
¿A qué te refieres con lo de variable HTML::Template?
¿A cada una de las variables de sustitucioń dentro de la plantilla o al HTML generado por HTML::Template?

NotaPublicado: 2005-09-12 14:58 @665
por lalo75
Me refiero al HTML generado por HTML:Template.

Este es el código que utilizo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. # Abre archivos Template con formato del correo
  2. my $mensaje = HTML::Template->new(filename => 'formato4.tmpl');
  3.  
  4. $mensaje->param(DETALLE => $detalle_emp);
  5.  
  6. #Guarda HTML
  7. open( HTMLS, ">/htmls/prueba01.html");
  8. print HTMLS $mensaje;
  9. close (HTMLS);
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

NotaPublicado: 2005-09-12 15:32 @689
por kidd
Hola.

Según entiendo quieres guardar la salida de tu plantilla procesada en el archivo. Si este es el caso entonces nada más tendrías que cambiar la línea:
print HTMLS $mensaje;

por la siguiente:

print HTMLS $mensaje->output;

Hay un tutorial en el sitio que da una breve introducción al HTML::Template. Te recomiendo que le des un vistazo:
http://perlenespanol.com/archives-tut/000142.html


SALUDOS

NotaPublicado: 2005-09-12 15:55 @705
por lalo75
Hola, buenas tardes, kidd;

Si lo hago de esa forma, me manda el siguiente mensaje.

print() on closed filehandle HTMLS at formato4.pl line 84

NotaPublicado: 2005-09-12 21:08 @922
por kidd
Hola.

Intenta hacer lo siguiente:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
open( HTMLS, ">/htmls/prueba01.html") or die("Unable to open file: $!");
$mensaje->output(print_to => *HTMLS);
close(HTMLS)
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4



SALUDOS

NotaPublicado: 2005-09-13 15:21 @681
por lalo75
Muchas gracias, kidd.

Ya quedó, en verdad este foro apoya mucho a los programadores.