Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/10/2011, 10:34
miriamgomez
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Busqueda por intervalos

Te expongo todo el caso:


He creado una base de datos y hemos introducido unas series de vivienda. Para el ejemplo los campos dormitorios y aseos tienen un valor numerico

Ahora se trata de hacer una busqueda y posteriormente que muestre los resultados.

Busqueda:

Código PHP:
Ver original
  1. <form name= "formulario" method= "post" action="busqueda.php" >
  2. <table width="600" border="1">
  3.   <tr>
  4.     <td colspan="2">BUSCAR</td>
  5.   </tr>
  6.   <tr>
  7.     <td>DORMITORIOS</td>
  8.     <td><select name="dormitorios">
  9.         <option value="????">&lt;2</option>
  10.         <option value="?????">3-5</option>
  11.         <option value="??????">6-8</option>
  12.         <option value="?????">9-11</option>
  13.         <option value="??????">"≥" </option>
  14.       </select></td>
  15.   </tr>
  16.     <tr>
  17.     <td>ASEOS</td>
  18.     <td><select name="aseos">
  19.         <option value="????">&lt;2</option>
  20.         <option value="?????">3-5</option>
  21.         <option value="??????">6-8</option>
  22.         <option value="?????">9-11</option>
  23.         <option value="??????">"≥" </option>
  24.       </select></td>
  25.   </tr>
  26.   <tr>
  27.     <td colspan="2"><input type="submit" value="SEARCH" name="Buscar"></td>
  28.   </tr>
  29. </table>
  30. </form>

Y posteriormente mostrar los resultados encontrados (con algo parecido lo hacia antes, pero los intervalos em mataron)

Código PHP:

<?php
session_start
(); 
include(
'config.php');
if( isset(
$_POST['dormitorios']) ||  isset($_POST['aseos']) )
{

   
$a=$_POST['dormitorios'];
   
$b=$_POST['aseos'];


  
$resultado=mysql_select_db($db$conexion);
   if (!
$resultado){
   
      echo 
"ERROR: Imposible seleccionar la base de datos $basedatos.<br>\n";
      
mysql_close($conexion); 
      exit; 
       }
   else{
    
     }
     
$sql="select*from recetas where";
        if (
$a != '')
         
$sql .= " dormitorias like '%$a%' and " ;
       if (
$b != '')
       
$sql .=" iaseos = '$b' and "

";

       $sql .= " 
1 order by id" ;
       $res=mysql_query( $sql, $conexion);
      if (!$res){
       echo"
error".mysql_error();
       }
      else
     {
         echo"
<table align='center' border=2 cellpadding=10 bordercolor=gold>";
         echo"
<tr>
       <
td><h3>REF</h3></td>
       <
td><h3>DORMITORIOS</h3></td>
       <
td><h3>ASEOS</h3></td>
        <
td></td>
       
       
" ;
         while($fila = mysql_fetch_array($res))
          {


              echo "
<h3><tr><td><h4>$fila[id]</h4></td>
                     <
td><h4>$fila[ref]</h4></td>
                  <
td><h4>$fila[dormitorios]</h4></td>
<
td><h4>$fila[aseos]</h4></td>
               </
tr></h3>";
//mysql_close($connect);

        } 
      echo"
</table>";
     
   }
//or die("
error de insercion codigo de enfermedad o codigo de res no encontrado.".mysql_error()."<br>");
}
?>

Espero haberme explicado