listar datos de un formulario
Salman Programas S. L.
correo@salmansl.es
Tue, 22 Sep 1998 13:51:42 +0200
Hola a tod@s
La idea de Guille, me ha gustado mas, pues el uso del CGI.pm que me propone
Roberto, implica utilizar rutinas externas, que no me permiten tener todo el
control que a mi me gusta.
Por si le puede ser de utilidad a alguien y una vez implementada la idea de
Guille, la rutina quedaria de la siguiente manera:
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pareja = split(/&/, $buffer);
foreach $par (@pareja) {
($nombre, $valor) = split(/=/, $par);
$valor =~ tr/+/ /;
$valor =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$valor =~ s/<!--(.|\n)*-->//g;
$valor =~ s/<([^>]|\n)*>//g;
$valor =~ tr/<//;
$valor =~ tr/>//;
if (defined($in{$nombre})) {
$in{$nombre} .= " ";
}
else {
$con++;
$indice[$con]=$nombre;
}
$in{$nombre} .= $valor;
}
foreach $ord (0 .. $#indice) {
if (defined($in{$indice[$ord]})) { # (1)
print "$indice[$ord]: $in{$indice[$ord]}\n";
}
}
(1) esta linea es debida a que en medio elimino algunos campos del
formulario que no me interesa listar, aunque tambien utilizo en otra parte
un
if ($indice[$ord] eq 'tal_valor') {next;}
Gracias por la idea y saludos
Salvador Guzman
Salman PSL
correo@salmansl.es
http://salman.net/
http://salmansl.es/
<<<<<<<<<<<<<<<<<pregunta original>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>> Se me esta planteando un pequeño problema:
>>
>> Tras una toma de datos proveniente de un formulario, quiero listar los
datos
>> obtenidos pero en el mismo orden en el que aparecen en el formulario, que
>> por logica es el mismo orden en que se reciben.
>>
<<<<<<<<<<<<<<<<<respuesta de Guille>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>Lleva por aqui un contador y aparte del in{nombre} ten un array[i] con
>un puntero al in{nombre} correspondiente...
>
--------- Pie de mensaje --------------------------------
Visite: http://tlali.iztacala.unam.mx/~randrade/perl.shtml
Cancelar inscripcion:
mail to: majordomo@tlali.iztacala.unam.mx
text : cancelacion perl