Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/11/2011, 20:34
Avatar de punk-devil
punk-devil
 
Fecha de Ingreso: febrero-2008
Ubicación: Tuxtla Gutiérrez, Chiapas, Mexico
Mensajes: 19
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: Busqueda en Php usando foreach, mysql_fetch_array

Cita:
Iniciado por SirDuque Ver Mensaje
Por favor noten el valor de precio para la consulta MySQL
Código HTML:
Ver original
  1. <select name="precio">
  2. <option value="1">Entre 100000 y 200000</option>   
  3. <option value="2"> Entre 200000 y 300000 </option> 
  4. <option value="3"> > 300000 </option>  
  5.  


Código PHP:
Ver original
  1. $precios=$_POST['precio'];
  2. $consulta="SELECT * FROM `residencias` WHERE precio LIKE '$precios%' GROUP BY precio DESC";
  3.  
  4. $sql=mysql_query($consulta, $con) ;

El LIKE lleva un solo "%"
En desacuerdo de utilizar LIKE, debido a que si tenemos por ejemplo 1000000, lo cual es mayor que 300000, entonces apareceria como resultado de haber recibido "$_POST['precio']=1"...

Preferible utilizar operadores en la consulta, y/o un switch/case para construir la consulta:

Código PHP:
$precio=$_POST["precio"];
switch(
$precio){
    case 
'1':
        
$cond="precio < 200000";
    break;
    case 
'1':
        
$cond="precio > 200000 AND precio < 300000";
    break;
    case 
'3':
        
$cond="precio > 300000";
    break;
}
$query="SELECT * FROM `residencias` WHERE $cond  " 

Última edición por punk-devil; 07/11/2011 a las 20:36 Razón: Añadiendo datos para evitar confusion