Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/07/2009, 09:21
diegomel
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 15 años
Puntos: 3
ayuda con paginacion

Hola a todos, yo tengo armada una paginacion la cual al buscar pone los numeros de paginas y siguiente si es mas de 1 y cuando estoy en la pagina 2 pone agrega el anterior para poder ir cambiando para atras y adelante.
Hasta ahi anda todo perfecto, el problema que tengo es que la db tiene mas 300000 registros y como se imaginan si uno busca por 1 letra o 2 los resultados que arroja son mas de 2000 y el tema que como tengo puesto a 15 registros por pagina, la cantidad de pagina que pone son un monton y obviamente queda mal y se hace muy pesado todo.
Lo que yo queria saber es como se puede hacer para que quede como google por ej, que ponen solo 10 paginas y siguiente y anterior y a medida que uno va pasando con siguiente se van agregando las que siguen.
aca les pongo el codigo que estoy usando yo

if($total_registros) {
if(($pagina - 1) > 0) {
?>

<a href="?categoria=<?php echo $categoria ?>&busqueda=<?php echo $busqueda?>&periodo=<?php echo $periodo?>&pagina=<?=($pagina-1)?>"> Anterior</a>
<?php
}
?>
<?php
for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i) {
?>
<a href = '#'><?=$pagina; ?></a>
<?php
} else {
?>
<a href="?categoria=<?php echo $categoria ?>&busqueda=<?php echo $busqueda?>&periodo=<?php echo $periodo?>&pagina=<?=$i; ?>" ><?php echo $i; ?></a>
<?php
}
}
if(($pagina + 1)<=$total_paginas) {
?>
<a href="?categoria=<?php echo $categoria ?>&busqueda=<?php echo $busqueda?>&periodo=<?php echo $periodo?>&pagina=<?=($pagina+1);?>">Siguiente</a>
<?php

la idea seria modificar esto para que aparezca como les comente.

muchisimas gracias.