Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/02/2010, 08:23
Avatar de tonypc
tonypc
 
Fecha de Ingreso: enero-2008
Mensajes: 10
Antigüedad: 16 años, 10 meses
Puntos: 0
Error paginacion de registros en PHP

Hola Comunidad de Foros del Web!
Tengo un campo select en mi formulario de búsqueda que me muestra el resultado de acuerdo a la opcion (option) elegida.
Pero al momento de avanzar por la paginación, no conserva el "select".
La consulta se pierde al recorrer la paginación. He intentado seteando y luego invocando COOKIES para el campo tipoinmueble, pero obtengo el mismo resultado.
También probé ejecutar el select de la consulta a la base de datos con LIKE, pero me muestra en la paginación todos los registros, y no discriminados. Aunque no me parece conveniente recurrir a LIKE, ya que la búsqueda es acotada sólo a las opciones que puse.
En mi base de datos el campo tipoinmueble es tipo VARCHAR.
Acá les paso el código. Desde ya, muchas gracias. Saludos comunidad!


Código PHP:
<?php
define
("REG_PAG",1);
$pag=$_GET['pag'];
    if(empty(
$pag))
    {
        
$pag=1;
    }
$primerReg=(REG_PAG $pag)-REG_PAG;

$tipoinmueble=$_GET['tipoinmueble'];
$operacion=$_GET['operacion'];
$moneda=$_GET['moneda'];
$cifra=$_GET['cifra'];
$imagen=$fila['imagen'];

$titulo="Buscador de Propiedades";
require(
"conexion.php");

$queryReg="SELECT * "/* inicio consulta de REGISTROS */
$queryCant="SELECT COUNT(*) as cantidad"/* cuento registros totales */
$query=" FROM inmuebles WHERE tipoinmueble LIKE '$tipoinmueble' OR operacion LIKE '$operacion'";

$queryReg.=$query." LIMIT $primerReg,".REG_PAG;
$queryCant.=$query;
$res=mysql_query($queryReg,$link);

$resCant=mysql_query($queryCant,$link);
$vCant=mysql_fetch_array($resCant);
$paginas=ceil($vCant['cantidad'] / REG_PAG);

include(
"encabezado.php");
?>
<div id="contenidofull"> 
<table>
    <tr>
        <td>
        <form action="inmuebles.php" method="get">
        <fieldset><legend>*Tipo</legend>
            <select name="tipoinmueble">
                <option value=""></option>
                <option value="Casa">Casa</option>
                <option value="Casa Quinta">Casa Quinta</option>
                <option value="Casa Americana">Casa Americana</option>
                <option value="Chalet">Chalet</option>
                <option value="Departamento">Departamento</option>
                <option value="Duplex">Duplex</option>
                <option value="Triplex">Triplex</option>
                <option value="Galpon">Galpon</option>
                <option value="Lote">Lote</option>
                <option value="Local">Local</option>
                <option value="Negocios Especiales">Negocios Especiales</option>
                <option value="PH">PH</option>
                </select>
        </fieldset>
        <fieldset>
        <legend>*Operacion</legend>
            <select name="operacion">
                <option value=""></option>
                <option value="Venta">Venta</option>
                <option value="Alquiler">Alquiler</option>
                <option value="Alquiler temporario">Alquiler Temporario</option>
            </select>
        </fieldset>
        <fieldset>
        <legend>Ambientes</legend>
            <select name="ambientes">
                <option value=""></option>
                <option value="1">1 ambiente</option>
                <option value="2">2 ambientes</option>
                <option value="3">3 ambientes</option>
                <option value="4">4 ambientes</option>
                <option value="5">5 ambientes</option>
                <option value="6">6 ambientes</option>
            </select>
        </fieldset>
        </td>
        <td>
        <fieldset>
        <legend>Precio</legend>
            <select name="moneda">
                <option value=""></option>
                <option value="peso">$</option>
                <option value="dolar">U$s</option>
                <option value="euro">€</option>
            </select>
            <input type="text" name="cifra" value="<?php echo $cifra;?>">    
        </fieldset>
        <fieldset>
        <legend>Ubicacion</legend>
            <select name="ubicacion">
                <option value=""></option>
                <option value="Capital Federal">Capital Federal</option>
                <option value="Provincia de Buenos Aires">Provincia de Buenos Aires</option>
                <option value="GBA Zona Oeste">GBA Zona Oeste</option>
                <option value="GBA Zona Norte">GBA Zona Norte</option>
                <option value="GBA Zona Sur">GBA Zona Sur</option>
                <option value="Interior del pais">Interior del pais</option>
                <option value="Exterior">Exterior</option>
            </select>
            <br/>
            O ingrese la localidad de su interes.<br>
            <input type="text" name="localidad" value="<?php echo $localidad?>">
        </fieldset>
    <tr>
        <td>*Campos obligatorios</td>
        <td>
            <input type="submit" value="BUSCAR">
        </td>
    </tr>
    </form>
        </td>
    </tr>
</table>
<!-- FIN FORMULARIO -->
<hr>
<?php
if(mysql_num_rows($res) > )
?>
    <div align='center'>PAGINAS<br>
    <?php 
    
for($i=1;$i<=$paginas;$i++)
    {
        if(
$i!=$pag)
        {
            echo 
"<a href='inmuebles.php?pag=$i'>$i</a>";
        }
        else
        {
            echo 
"<strong>$i</strong>";
        }
    } 
?>    

    </div>

<!-- LISTADO -->
    <!-- TABLA -->
    <table class="listado">
        <tr>
            <th>Foto</th>
            <th>Codigo</th>
            <th>Tipo</th>
            <th>Operacion</th>
            <th>Amb.</th>
            <th>Moneda</th>
            <th>Precio</th>
            <th>Ubicacion</th>
        </tr>
        <tr>

<?php
while($fila=mysql_fetch_array($res))
    { 
?>
        <tr>
            <td>
            <a href=<?php echo "img/inmuebles/".$fila['imagen'];?> rel="lightbox[]">
            <!-- CREO LA RUTA DE LA IMAGEN Y LA CONCATENO CON EL ID DE LA BASE DE DATOS -->
            <?php $rutathumb="img/inmuebles/redimensionar.php?imagen=".$fila['imagen'];?>
            <!-- CREADA LA RUTA COMPLETA DIRECTORIO+IMAGEN DINAMICA, IMPRIMO EL RESULTADO -->
            <img src="<?php echo $rutathumb;?>">
            </a>
            <td><?php echo $fila['codigo'];?></td>
            <td><?php echo $fila['tipoinmueble'];?></td>
            <td><?php echo $fila['operacion'];?></td>
            <td><?php echo $fila['ambientes'];?></td>
            <td><?php 
                
switch($fila['moneda'])
                {
                    case 
peso: echo "$";
                    break;
                    case 
dolar: echo "U\$s";
                    break;
                    case 
euro: echo "€";
                    break;
                } 
?>
            </td>
            <td><?php echo $fila['cifra'];?></td>
            <td><?php echo $fila['ubicacion'];?></td>
        </tr><?php
    
?>
        </tr>
    </table>
    <!-- FIN TABLA -->
    <?php 
}
        else
        { 
?>
            <div><h1>"No hay resultados"</h1></div>
        <?php 
        
}
        
?>
</div>

<div id="varios">
    <img src="img/publi_00.jpg" alt="invertir" width="170" height="500" />
</div>
<?php include("pie.php"); ?>