Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/01/2004, 14:49
Avatar de monoswim
monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 23 años
Puntos: 90
facil!!!

primero que nada cuando el script comienza, tienes que leer cuales son los parámetros que le fueron mandanos (id=holamundo)

eso lo haces de la siguiente forma:

my (@pairs,$buffer,$pair,$name,$value,%input_data);

if ($ENV{'REQUEST_METHOD'} eq 'GET') {

@pairs = split(/&/, $ENV{'QUERY_STRING'});

}elsif ($ENV{'REQUEST_METHOD'} eq 'POST') {

read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $buffer);

}else {

&error('leer','datos');

}

foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);

$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$name =~ tr/\0//d;

$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/\0//d;

$input_data{$name} = $value;
}


De esta forma tienes una variable hash con los parámetros de entrada al sctips. Ahora bien, hoy que empezar a ver que es lo que dicen esos parámetros:

if ($input_data{'id'} eq 'holamundo') {
print "content-type: text/html \n\n hola mundo";
}elsif ($input_data{'id'} eq 'chaumundo') {
print "content-type: text/html \n\n chau mundo";
}else{
print "content-type: text/html \n\n que dianblos quieres hacer";
}

el content-type: text/html \n\n es para que la salida sea al navegador web.
La verdad es que no tiene nada de sofisticado, dependiendo de la entrada que seea, haces una cosa o la otra.

Espero que te sirva
MonoSwim
__________________
Esteban Quintana