Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/10/2014, 12:49
Avatar de loncho_rojas
loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: Paginador php inteligente

Yo lo hago más fácil aún... el problema es que si tengo 100 resultados, los divido de a 10 y obtendré 10 paginas, por ende tendría 10 botones, que sin problemas se puede mostrar ¿Cierto? ok.. y si tengo 15.000 resultados? y los divido de a 20.. tendría 750 páginas... no puedo mostrar 750 botones... por eso puse el ejemplo.. necesito mostrar los botones de a 10 por lo menos.. fijense en el paginador del foro como es... un paginador para mi es mas sencillo

Código PHP:
<?php

if (isset($_GET["page"])) { $page $_GET["page"]; } else { $page=1; };
$start_from = ($page-1) * 50;

$sql="SELECT * FROM empresas_registradas ORDER BY id_empresa ASC LIMIT $start_from, 35";

?>

<div id="pagination">
                                    <ul class="pagination pagination-sm">
                                         
                                    <?php
                                     
if(isset($_GET["emp"])){ 
                                     
                                     
?>
                                        <li><a href="#"><?php echo $num_emp ?> Resultados</a></li>
                                     <?php
                                     
                                     
}else{
                                        
$sql_result "SELECT COUNT(id_empresa) FROM empresas_registradas";
                                        
$result=mysql_query($sql_result,$conn);
                                        
$row mysql_fetch_array($result);
                                        
$total_records $row[0];
                                        
$total_pages ceil($total_records 35);
                                         
                                        for (
$i=1$i<=$total_pages$i++) {
                                        echo 
"<li><a href='?page=".$i."'";
                                        if(
$page==$i)
                                        {
                                        echo 
"id=active";
                                        }
                                        echo 
">";
                                        echo 
"".$i."</a></li> ";
                                        };
                                    
                                    
                                     }
                                    
?>
                                    </ul>
                               </div>
pero lo que quiero es mostrar como ya expliqué, solo que no encuentro con qué hacerlo o como hacerlo...

Inicial
<< < | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 ... > >>

cuando presione en la pagina 10 que me muestre mas botones si hay
<< <... | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 ... > >>


si presione en el 45, que me muestre solo los 10 siguientes
<< <... | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 ... > >>

espero se entienda.. mi código pagina perfecto, pero no se como hacer esto que necesito.. tengo cerca de 20mil registros y necesito paginarlo ahorrando espacio. No quiero llenar mi pagina con 2mil botones todos amontonados. No incito a que lo hagan, pero esas páginas tipo XXX redtube y demas paginan 500 paginas y abrevian y van mostrando botones de a 10, por ejemplo.. el del FOROS del Web tambien lo hace.
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...