Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/03/2021, 14:56
CanariasHosting
 
Fecha de Ingreso: abril-2009
Ubicación: Santa Cruz de Tenerife
Mensajes: 49
Antigüedad: 15 años, 1 mes
Puntos: 0
Problema de números en una paginación en pdo

Tengo un problema con la paginación de resultados, en la parte de abajo me lo muestra de la siguiente forma.

Código PHP:
611 612 613 614 615 616 617 618 619 Siguiente » 
cuando tendria que ser asi:

Código PHP:
1 2 3 4 5 6 7 8 9 10 Siguiente >> 
El codigo en cuestión es el siguiente:

Código PHP:
<?php
 
//establecemos condiciones de paginacion
$registros 20;
 
$pagina = @$_GET ['pagina'];

if (!isset(
$pagina))
{
$pagina 1;
$inicio 0;
}
else 
{
$inicio = ($pagina-1) * $registros;
}


//realizamos la busqueda en la base de datos
$pegar "SELECT * FROM d_fich0s WHERE (fichas_fecha <= '$Fecha' AND fichas_fecha >= '$Fecha_dos') AND ficha_activa='1' AND ficha_tipo='0' $ordenaje LIMIT $inicio, $registros";

//echo $pegar;

$cad $conexion->query($pegar) or die ( 'error al listar, $pegar'  PDOStatement::errorInfo() );



$contar "SELECT * FROM d_fich0s WHERE (fichas_fecha <= '$Fecha' AND fichas_fecha >= '$Fecha_dos') AND ficha_activa='1' AND ficha_tipo='0'";

$contarok $conexion->query($contar);
$total_registros $contarok->rowCount();

$total_paginas ceil($total_registros $registros);

  

     
$x "";
  
    
    while (
$row $cad->fetch(PDO::FETCH_ASSOC))  
    
    {          
    


    
$tpl=CargarFile('tpls/noticias.item.tpl'); 
    
    
$x.='
    <div class="notice">  
  <div class="notice_title">      
    <a title="'
.str_replace('¿','¿',latin1($row['ficha_titulo'])).'" href="MK-ENLACE">'.str_replace('¿','¿',latin1($row['ficha_titulo'])).' '.cata($row['fichas_categoria'],$conexion).'</a>  
  </div>                                
  <div class="clear">
  </div>    
  <div style="float:left;" class="hidden-xs">  
    <div class="notice_tags"> '
.categorias_ver($row['fichas_categoria'],$conexion).'
    </div>  
  </div>  
  <div style="float:right;" class="hidden-xs">  
    <div class="notice_tags"><b>Tags:</b> '
.Muestra_tags($row['fichas_tags'], $conexion).
    </div>    
  </div>    
  <div style="clear:both;">
  </div>    
  <div class="jumpa">
  </div>      
  <div class="notice_image">    
    <a title="'
.str_replace('¿','¿',latin1($row['ficha_titulo'])).'" href="'.$_SERVER['SERVER_NAME'].'/'.urls_amigables(latin1(cambiaresto($row['ficha_campo']))).'/">
      <img src="MK-IMAGENES"></a>  
  </div>  
  <div class="notice_description">   '
.bbcode(utf8_decode($row['ficha_descrip'])).'  
  </div>  
</div>'
;  

  
    
$x=str_replace('MK-IMAGENES',"/images-".$row['ficha_id']."",$x);  

    
$x=str_replace('MK-DESCARGAS',$row['fichas_descargas'],$x); 
      
      
$ak_Rows=$x;  
    }  
                
   
$fila="";
  
//creando los enlaces de paginacion de resultados

$ak_Paginado_Paginas.= "<center><p>";

if(
$total_registros>$registros){
if((
$pagina 1) > 0) {
$ak_Paginado_Paginas.=  "<span class='pactiva'><a href='?pagina=".($pagina-1)."'>&laquo; Anterior</a></span> ";
}
// Numero de paginas a mostrar
$num_paginas=10;
//limitando las paginas mostradas
$pagina_intervalo=ceil($num_paginas/2)-1;

//echo $pagina_intervalo;

// Calculamos desde que numero de pagina se mostrara
$pagina_desde=$pagina-$pagina_intervalo;
$pagina_hasta=$pagina+$pagina_intervalo;    



// Verificar que pagina_desde sea negativo
if($pagina_desde<1){ // le sumamos la cantidad sobrante para mantener el numero de enlaces mostrados $pagina_hasta-=($pagina_desde-1); $pagina_desde=1; } // Verificar que pagina_hasta no sea mayor que paginas_totales if($pagina_hasta>$total_paginas){
$pagina_desde-=($pagina_hasta-$total_paginas);

$pagina_hasta=$total_paginas;
if(
$pagina_desde<1){
$pagina_desde=1;
}
}


for (
$i=$pagina_desde$i<=$pagina_hasta$i++){
if (
$i==$pagina){
$ak_Paginado_Paginas.=  "<span class='pnumero'><b>".$pagina."</b></span> ";
}else{
$ak_Paginado_Paginas.=  "<span class='pactiva'><a href='?pagina=$i'>$i</a></span> ";
}
}

if((
$pagina 1)<=$total_paginas) {
$ak_Paginado_Paginas.=  " <span class='pactiva'><a href='?pagina=".($pagina+1)."'>Siguiente &raquo;</a></span>";
}
}

$ak_Paginado_Paginas.=  "</p></center>";  

?>

Muchisimas gracias por la ayuda.