Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/09/2011, 02:08
Sabin
 
Fecha de Ingreso: marzo-2008
Mensajes: 60
Antigüedad: 16 años, 1 mes
Puntos: 0
Como mejorar paginación?

Buenas tengo un sistema de paginación sencillo al cual quiero hacerle unas mejoras y necesitaria que me orientaran ya que soy bastante noob en este tema.

Les dejo el codigo:

Código PHP:
//Limito la busqueda 
$TAMANO_PAGINA 5

//examino la página a mostrar y el inicio del registro a mostrar 
$pagina $_GET["pagina"]; 
if (!
$pagina) { 
        
$inicio 0
        
$pagina=1

else { 
       
$inicio = ($pagina 1) * $TAMANO_PAGINA
}
//miro a ver el número total de campos que hay en la tabla con esa búsqueda 
$ssql "select * from noticias"
$rs mysql_query($ssql); 
$num_total_registros mysql_num_rows($rs); 
//calculo el total de páginas 
$total_paginas ceil($num_total_registros $TAMANO_PAGINA); 

//pongo el número de registros total, el tamaño de página y la página que se muestra 
echo "Número de registros encontrados: " $num_total_registros "<br>"
echo 
"Se muestran páginas de " $TAMANO_PAGINA " registros cada una<br>"
echo 
"Mostrando la página " $pagina " de " $total_paginas "<p>"
//construyo la sentencia SQL 
$ssql "select * from noticias limit " $inicio "," $TAMANO_PAGINA
$rs mysql_query($ssql); 
while(
$f=mysql_fetch_array($rs)){
echo 
'<tr>'.$f['fecha'].'</td><br />';
echo 
'<tr>'.$f['titulo'].'</td><br />';
echo 
nl2br (substr(($f['noticia']),0,150)) . "..."
echo 
'<tr><a href="noticia.php?id='.$f['id'].'">[Ver noticia completa]</a><br /><br /><br />'
}
//cerramos el conjunto de resultado y la conexión con la base de datos 
mysql_free_result($rs); 
//muestro los distintos índices de las páginas, si es que hay varias páginas 
if ($total_paginas 1){ 
       for (
$i=1;$i<=$total_paginas;$i++){ 
           if (
$pagina == $i
              
//si muestro el índice de la página actual, no coloco enlace 
              
echo $pagina " "
           else 
              
//si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página 
              
echo "<a href='paginacion.php?pagina=" $i ."'>" $i "</a> "
       } 

Con este codigo la paginacion de muestra de la siguiente forma:
(Supongamos tengo 15 paginas de resultados)

Cita:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
En lo que me gustaria me orientes es en como podria lograr que se resalte el numero de la pagina en la cual me encuentro, como limitar el numero de paginas que se muestran y que siempre este la opcion de ir tanto a la primer pagina como a la ultima.
Algo asi:

Cita:
1... 7 8 9 ... 15
Gracias.