Ver Mensaje Individual
  #7 (permalink)  
Antiguo 16/06/2009, 06:20
ruizdeeguilaz
 
Fecha de Ingreso: junio-2009
Ubicación: Valencia
Mensajes: 45
Antigüedad: 15 años, 9 meses
Puntos: 8
Respuesta: Precio máximo con php

Hola Info23,

Te voy a proponer otra solución que te puede resultar interesante:

En primer lugar, los precios los puedes meter en una tabla de base de datos y mostrarlos en el select igual que haces con las ciudades:

Código PHP:
  <label for="precio">Precio máximo</label><br/>
    <select id="precio" name="precio" id="precio">
      <option value="0">--Cualquier precio--</option>
      <?php
        $tablaprecios 
mysql_query("SELECT * FROM precios ORDER BY id ASC"); // Seleccionamos los precios de la tabla precio
        
while ($registroprecio mysql_fetch_array($tablaprecios)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada precio en la tabla
      
?>
        <option value="<?php echo $registroprecio['id']; ?>"><?php echo $registroprecio['texto']; ?></option>
      <?php
        
// termina la zona de repeticion
        
mysql_free_result($tablaprecios); // se libera la memoria usada por la tabla
      
?>
    </select>
  <br/>
Observa que también he corregido la forma de usar la etiqueta <label>, que debe relacionar el atributo "for" con el atributo "id" del tag al que hace referencia la etiqueta.

La tabla de precios (realmente rango de precios) podría contener los siguientes campos:
  • id: identificador del precio
  • desde: precio mínimo para el rango
  • hasta: precio máximo para el rango
  • texto: descripción del rango

Te quedaría algo así:

id desde hasta texto
1 0 200 Máximo 200€
2 201 300 Máximo 400€
...

Luego, para las búsquedas, primero debes extraer los datos "desde" y "hasta" con una query SQL a partir del valor seleccionado (supongamos que lo guardas en la variable $idPrecio):

Código PHP:
$query 'SELECT desde, hasta FROM precio WHERE id='.$idPrecio
Con los valores obtenidos puedes hacer una búsqueda en la tabla de las viviendas y extraer sólo las que tengan un precio dentro de los márgenes:

Código PHP:
$queryViviendas 'SELECT * FROM vivienda WHERE precio>='.$desde.' AND precio<'.$hasta.' ORDER BY precio ASC'
Salu2,
Carlos.