Comunidad de diseño web y desarrollo en internet online

Paginación de resultados

Citar            
MensajeEscrito el 18 Sep 2012 03:12 am
Hola tengo una página de almacenes clasificados en categorías, pero algunas de las categorías tienen muchos almacenes y se me hace necesario paginar para hacer menos densa la lectura, he tratado con los ejemplos que vi aquí en cristalab y en otros sitios, tengo este código con el que trato de resolver el tema, limita a los primeros 5, coloca el número indicado de páginas por cada categoría, pero no funcionan los enlaces, aquí lo pongo todo tal cual lo tengo:

Código PHP :

<?php
include("config/conexion.php");

// maximo por pagina
$limit = 3;

// pagina pedida
if(isset($_GET['pag'])){
    $pag= $_GET['pag'];
}else{
//SI NO DIGO Q ES LA PRIMERA PÁGINA
    $pag=1;
}
$offset = ($pag-1) * $limit;


$sql = "SELECT SQL_CALC_FOUND_ROWS id, nombre, local, telefono, celular, email FROM almacenes WHERE id_cat = '".$_GET["id"]."'";
$sqlTotal = "SELECT FOUND_ROWS() as total";
$currentid = $_GET["id"];
$rs = mysql_query($sql);
$rsTotal = mysql_query($sqlTotal);

$rowTotal = mysql_fetch_assoc($rsTotal);
// Total de registros sin limit
$total = $rowTotal["total"];

?>

<?php if($_GET["id"]){  $cat = mysql_query("SELECT * FROM almacenes WHERE id_cat = '".$_GET["id"]."' ORDER BY id ASC LIMIT $offset, $limit");  if(mysql_num_rows($cat)>0){
              
   while($row = mysql_fetch_object($cat)){ ?>   
              
    <div class="almacenbox">
       <div class="shadow"></div>
       <div class="white">
           <div class="image"><img src=almacenes/local_111.jpg></div>
            <div class="title"><?php echo $row->nombre?></div>
            <div class="text">Local: <?php echo $row->local?></div>
            <div class="text">Teléfono: <?php echo $row->telefono?></div>
            <div class="text">Celular: <?php echo $row->celular?></div>
            <div class="text"><?php echo $row->email?></div>
        </div>
    </div>
<?php } ?>
<?php } }else{ echo "<p>No hay resultados para mostrar</p>"; }?>
<table border="1" bordercolor="#000">
<tfoot>
      <tr>
         <td colspan="2">
      <?php
         $totalPag = ceil($total/$limit);
         $links = array();
         for( $i=1; $i<=$totalPag ; $i++)
         {
            $links[] = "<a href=almacenes.php?id=$currentid?pag=$i\>$i</a>"; 
         }
         echo implode(" - ", $links);
      ?>
         </td>
      </tr>
   </tfoot> </table> 

Por jeanramirez

11 de clabLevel



 

chrome
Citar            
MensajeEscrito el 18 Sep 2012 02:37 pm
si cambias esto

Código PHP :

$links[] = "<a href=almacenes.php?id=$currentid?pag=$i\>$i</a>"; 

por esto

Código PHP :

$links[] = "<a href=\"almacenes.php?id=$currentid?pag=$i\" >$i</a>"; 

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Sep 2012 04:51 pm
ya logré que andara bien... muchas gracias! efectivamente en esa linea era el error, la solución fué así:

Código PHP :

   "<a href='almacenes.php?id=$currentid&pag=$i' >$i</a>";


Muchas gracias!

Por jeanramirez

11 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.