Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/03/2002, 13:21
BerkoviC
 
Fecha de Ingreso: febrero-2002
Mensajes: 17
Antigüedad: 22 años, 2 meses
Puntos: 0
Re: Formulario que filtre

Hola Berne,

no sé exactamente lo que pides, pero bueno...
Suponiendo que tengas un formulario HTML corriente con un select, y después un campo de texto para hacer la búsqueda, algo como:

<FORM ACTION="buscar.cgi" METHOD="POST" TITLE="buscar">
<SELECT NAME="casas" SIZE="1">
<OPTION VALUE="ubicacion">Ubicación</OPTION>
<OPTION VALUE="precio">Precio</OPTION>
<OPTION VALUE="casa">Casa</OPTION>
</SELECT>
<INPUT TYPE="text" VALUE="" NAME="texto">
<INPUT TYPE="submit" VALUE="Buscar" NAME="buscar">
</FORM>

O algo parecido... :)

El CGI recibe los datos y en base a el valor del select te mostraría una información u otra. Si el usuario ha elegido "Ubicación" y en el campo de texto el nombre de una ciudad:

# Recibes los datos del formulario en el array @cadena de manera que la accion se guardará en el elemento 0 y el texto de búsqueda en el elemento 1

if ($cadena[0] eq "ubicacion"){
&ubicacion;}
elsif ($cadena[0] eq "precio"){
&precio;}
else{
&casa;}

sub ubicacion
{
# Haces la consulta a la base de datos y muestras los resultados, por ejemplo:
$my sth->prepare("SELECT campo1,campo2,campo3 FROM bdcasas WHERE ubicacion='$datos[1]'");
$sth->execute;

# y luego muestras los resultados, por ejemplo:
print "<table>\n";
while(($campo1,$campo2,$campo3)=$sth->fetchrow_array())
{
print "<tr><td>$campo1 - $campo2 - $campo3</td></tr>\n";
}
print "</table>\n";
}

A grandes rasgos se trataría de desarrollar algo así. Espero que te sirva, un saludo. :)