Ver Mensaje Individual
  #35 (permalink)  
Antiguo 24/11/2011, 12:47
Avatar de truman_truman
truman_truman
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

Ok estaba mal, creo que este si:



Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('catalogo');


    
//CONFIGURACIÓN:
    
$tabla                         ' producto  ';
    
$limite                        5;
    
    
    
//seguridad
    
if(isset($_GET['pagina']))
    {
        if(!
is_numeric($_GET['pagina']))
        {
            echo 
'ERROR: ';
            exit;
        }
    }
    
    
    
    
//total registros
        
$consulta_total                =    mysql_query("SELECT * FROM $tabla ; ");
        
$totalRegistros     =     mysql_num_rows($consulta_total);
    
    
//total paginas
    
function totalPaginas()
    {
        global                         
$tabla;
        global                         
$limite;
        global                         
$totalRegistros;
        global                         
$totalpaginas;
        global                         
$totalRegistros;
        
$totalpaginas                 ceil($totalRegistros/$limite);
        return                         
$totalpaginas;
    }
    
    
    
//pag actual
    
function pagActual()
    {
        
$pagActual 0;
        if(isset(
$_GET['pagina']))
        {
            
$pagActual $_GET['pagina'];
        }
        return 
$pagActual;
    }
    
//pag siguiente
    
function pagSiguiente()
    {
        
$pagActual pagActual();
        
$pagSiguiente $pagActual+1;

        return 
$pagSiguiente;
    }
    
//pag anterior
    
function pagAnterior()
    {
        
$pagActual pagActual();
        
$pagAnterior $pagActual-1;

        return 
$pagAnterior;
    }
    
    
    
//ant
    
function Ant()
    {
        
$pagActual pagActual();
        if(
$pagActual>0)
        {
            echo 
'<a href="?pagina='.pagAnterior().'"><- Ant</a>&nbsp;&nbsp;&nbsp;&nbsp;';
        }
    }
    
    
    
//Sig
    
function Sig()
    {
        
$pagActual pagActual();
        
$totalPaginas totalPaginas();
        if(
$pagActual<($totalPaginas-1))
        {
            echo 
'&nbsp;&nbsp;&nbsp;&nbsp;<a href="?pagina='.pagSiguiente().'">Sig -></a>';
        }
    }
    
    
    
//mostrar links Números
    
function generarLinks()
    {
        
        for(
$i=1;$i<=totalPaginas();$i++)
        {
            
            if((
$i-1)==pagActual())
            {
                echo 
'&nbsp;<strong>'.$i.'</strong>&nbsp;';
                
            }else{
                
                echo 
'&nbsp;<a href="?pagina='.($i-1).'">'.$i.'</a>&nbsp;';
                
            }
            
            
            
            
        }
        
    }
    
    
    
//desde
    
function desde()
    {
        global             
$limite;
        
$pagActual     =     pagActual();
        
$desde         =     $pagActual*$limite;
        return 
$desde;
    }
    
    
    
    function 
paginacion()
    {
        
Ant();
        
generarLinks();
        
Sig();
    }









?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
      
      
      
      
    
//paginacion
    
$desde         =     desde();

    
$pagiNacIon "";
    if(isset(
$_GET['pagina'])){
    
$pagiNacIon " LIMIT $desde,$limite; ";
    }
      
    
    
$sql "SELECT * FROM producto p ";
    
$sql .= "LEFT JOIN linea l ON l.id = p.idlinea ";
    
$sql .= "LEFT JOIN rubro r ON r.id = p.idrubro ";
    
$sql .= "LEFT JOIN marca m ON m.id = p.idmarca ";
    
$sql .= "LEFT JOIN marca a ON a.id = p.idmodelo ";
    
$sql .= "WHERE 1";
    if (isset(
$_POST['selLinea']) && $_POST['selLinea'] != -1) {
        
$sql .= " AND l.id = " $_POST['selLinea'];
    }
    if (isset(
$_POST['selRubro']) && $_POST['selRubro'] != -1) {
        
$sql .= " AND r.id = " $_POST['selRubro'];
    }
    if (isset(
$_POST['selMarca']) && $_POST['selMarca'] != -1) {
        
$sql .= " AND m.id = " $_POST['selMarca'];
    }
    if (isset(
$_POST['selModelo']) && $_POST['selModelo'] != -1) {
        
$sql .= " AND a.id = " $_POST['selModelo'];
    }
    if (isset(
$_POST['txtBusqueda'])) {
        
$sql .= " AND p.titulo LIKE '%" $_POST['txtBusqueda'] . "%'";
    }
    
    
$sql .= " ORDER BY p.id DESC $pagiNacIon ";



$tabla mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
      
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

  </table></td>
    </tr>
    <tr>
      <td align="center" valign="top">&nbsp;</td>
      <td valign="top"><?php if (isset($_GET['pagina'])){paginacion();} ?></td>
    </tr>
  </table>
</div>
</tr>
</body>
</html>
__________________
la la la