Tema: Paginación
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/07/2014, 04:45
Avatar de Eleazan
Eleazan
 
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Paginación

Yo tengo algo parecido...

Te lo he cambiado un poco, pq lo tenia en una clase... pero bueno xD

Código PHP:
function getPageLine($page) {
        return 
'<li>'.($page).'</li>';
    }
    
function 
getPages($current_page$total_pages$max_pages_show 5) {
                    
            
            
            
$paginator '<ul>';
            
            
$divider floor($max_pages_show 2);
            
            
$page_lines = array();
            for(
$i = ($current_page $divider); $i <= ($current_page $divider); $i++) {
                
$page $i $i $max_pages_show-abs($i);
                if(
$page $total_pages$page $i $max_pages_show;
                
$page_lines[$page] = getPageLine($page);
                            
            }
            
ksort($page_lines);
                
            foreach(
$page_lines as $page => $line) if($page 0$paginator .= $line;
                
            
            
$paginator .= '</ul>';    
            
            return 
$paginator;
        
        
    }

echo 
getPages(11,30,15); 
Es algo sencillo que hice, y q he ido "puliendo" (al principio era un desastre de condicionales!).
Está más o menos bonito. Funciona bien con máximos impares (xD), y te muestra las N-páginas más cercanas a la página actual :D

Podrías adaptarlo a tus necesidades. Un saludo!
EDIT: Salió de aqui: http://www.forosdelweb.com/f18/optim...nales-1101264/, por si quieres leer algún comentario ;)
__________________
>> Eleazan's Source
>> @Eleazan