Foros del Web » Programando para Internet » PHP »

Problemas con formulario

Estas en el tema de Problemas con formulario en el foro de PHP en Foros del Web. Hola a todos. Estoy terminando de desarrollar una web. La web tiene un formulario de busqueda Multicriterio que funciona bien. Sin embargo uno de los ...
  #1 (permalink)  
Antiguo 11/12/2011, 21:44
(Desactivado)
 
Fecha de Ingreso: enero-2004
Mensajes: 136
Antigüedad: 20 años, 3 meses
Puntos: 0
Problemas con formulario

Hola a todos.

Estoy terminando de desarrollar una web. La web tiene un formulario de busqueda Multicriterio que funciona bien. Sin embargo uno de los criterios para buscar es el rango de edad.

Utilizo una funcion en PHP para definir los valores de dicho campo, sin embargo el POST solo recibe el ultimo de dichos valores.

He creado dos sencillas paginas para tratar de solucionar el problema pero nada.

Aqui os dejo el codigo de las dos paginas (Formulario y la receptora de los datos)

Espero que me podais ayudar.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<p>

<?php foreach (range(18, 20) as $numero )?>
</p>
<p>&nbsp;</p>
<form id="form1" name="form1" method="post" action="b.php">
<label for="r1">r1</label>
<select name="r1" id="r1">
<option value="<?php { echo "$numero";} ?>">rr</option>
</select>

<input type="submit" name="r2" id="r2" value="Submit" />
</form>
<p>&nbsp;</p>
</body>
</html>


-----------------------------------------------------------------


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>


</html>
<?php echo $_POST['r1] ?>

</body>
</html>
  #2 (permalink)  
Antiguo 11/12/2011, 21:56
 
Fecha de Ingreso: diciembre-2011
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: Problemas con formulario

Buenas Noches... no se si a lo que te refieres es a que imprima 18,19,20? si es asi el contenido del option tiene que estar dento del foreach....

quedari asi...

<form id="form1" name="form1" method="post" action="b.php">
<label for="r1">r1</label>
<select name="r1" id="r1">

<?php foreach (range(18, 20) as $numero ){

?>
<option value="<?php echo $numero; ?>" ><?php { echo $numero;} ?></option>
<?

} ?>


</select>

<input type="submit" name="r2" id="r2" value="Submit" />
</form>

y el b.php

lo recoges asi
<?php echo $_POST['r1']; ?>

Última edición por chmorataya; 11/12/2011 a las 21:59 Razón: correccion de codigo...
  #3 (permalink)  
Antiguo 11/12/2011, 23:53
(Desactivado)
 
Fecha de Ingreso: enero-2004
Mensajes: 136
Antigüedad: 20 años, 3 meses
Puntos: 0
Respuesta: Problemas con formulario

Hola.

Muchas gracias por tu tiempo.

Lo que yo ando buscando es lo siguiente:

En un formulario que tengo en la web que estoy creando se puede buscar por edad. En vez de insertar un listado enorme de numeros, pretendo realizar la busqueda por rangos de edad: de 18 a 20, de 20 a 30 etc....

La funcion en PHP la utilizo generar los datos y madarlos via POST al archivo de paginacion y procesarlo mediate mySQL.

El formulario lo tengo ya realizado y he logrado que funcione: manda al archivo de paginacion la cadena de edades ej: 181920. Lo hace todo junto o con un espacio entre medias.

Ahora el problema lo tengo porque mySQL lee esos datos pero no devuelve ningun registro.

La query que utilizo es:

SELECT *
FROM ads
WHERE CATEGORIA LIKE %busco% AND POBLACION LIKE %ciudad% AND NACIONALIDAD LIKE %origen% AND EDAD LIKE %ed% AND TARIFA LIKE %precio%

Como podria resolver este inconveniente???.


Muchas gracias.

Etiquetas: formulario, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:56.