[perl] Ejemplo de CGI.
Salvador Ortiz Garcia
sog@msg.com.mx
Wed, 24 Mar 1999 21:32:48 -0600 (EST)
On Tue, 23 Mar 1999, before her mail server died, L.I. Maria Padilla
Tejeda wrote:
> >
> > > tu usas la libreria cgi.pm?
> >
> > Si.
> no podrias enviarme un ejemplo con esta libreria, creo que con esta no
> tendria problemas .. cierto?
Mira, no tengo a la mano ningún ejemplito, pero hasta el momento
_yo_ no he tenido problemas.
Pero sale un seudoejemplo:
-------------------------
use CGI qw(:all);
...
...
if(request_method() ne 'POST') { # Genero la forma
# Con un sólo print!
print header,
start_html(-title=>'Mi título'),
start_multipart_form,
textfield(-name=>'dato'), # Un campo de texto
.... # otros campos
filefield(-name=>'upfile'), # Un campo FILE
.... # Más campos
submit(-value => 'Envía'), # El botón de submit
end_form,
end_html;
} else { # Recibo los datos
my $file = param('upfile'); # Recibo el FH del archivo
my $dato = param('dato'); # y los otros datos
...
# Nota: el nombre que el archivo tenía en su sistema nativo
# es irrelevante. Si me interesa se lo tengo que pedir al usuario en
# algún campo 'text'
open(UPFILE,'>/tmp/recibido.file'); # Donde guardo el archivo
UPFILE->autoflush(1); # Asomate al man
while(read($file,$buffer,1024)) { # Copio el contenido
print UPFILE $buffer;
}
print header,
start_html(-title=>'Archivo recibido'),
center(
"Dato: $dato<p>",
'Recibí un archivo de ',-s(UPFILE),' bytes'
);
close(UPFILE);
....
print end_html;
}
----------------
Saludos
Salvador Ortiz
--------- Pie de mensaje --------------------------------
Visite: http://tlali.iztacala.unam.mx/~randrade/perl.shtml
Cancelar inscripcion:
mail to: majordomo@tlali.iztacala.unam.mx
text : cancelacion perl