Foros del Web » Programando para Internet » PHP »

boton siguiente, anterior en paginacion php

Estas en el tema de boton siguiente, anterior en paginacion php en el foro de PHP en Foros del Web. Hola amigos: Tengo una paginacion AJAX que va muy bien, la he maquetado con css y he metido un par de condicionales que la han ...
  #1 (permalink)  
Antiguo 28/02/2012, 04:17
Avatar de protoameeba  
Fecha de Ingreso: septiembre-2005
Mensajes: 195
Antigüedad: 18 años, 7 meses
Puntos: 3
De acuerdo boton siguiente, anterior en paginacion php

Hola amigos:

Tengo una paginacion AJAX que va muy bien, la he maquetado con css y he metido un par de condicionales que la han dejado muy maja, pero, ahora me gustaria que solo mostrase hasta el numero 14 de paginas paginadas, y despues metiese el tipico boton de anterior siguiente...

Estoy un poco perdido, si alguien me puede ayudar se lo agradeceria...

Ahi dejo el codigo que uso hasta ahora:

Código PHP:
Ver original
  1. define("PagTam",12);
  2.        
  3. if(isset($_GET['pag']))
  4.     $pag = $_GET['pag'];
  5. else
  6.     $pag = 1;
  7.  
  8. $inicio = ($pag-1) * PagTam;
  9.  
  10.  
  11. mysql_query ("SET NAMES utf8");
  12. mysql_query("mysql_set_charset_name(&mysql, 'utf8')");
  13. $todos = "select count(*) as num from anuncios";
  14. $result = $conexion->query($todos);
  15. $fila = $result->fetch_assoc();
  16. $numRegistros = $fila['num'];
  17.  
  18. $numPags=ceil($numRegistros/PagTam);
  19.  
  20. mysql_query ("SET NAMES utf8");
  21. mysql_query("mysql_set_charset_name(&mysql, 'utf8')");
  22. $sql="select * from anuncios ORDER BY date DESC LIMIT ". $inicio.",".PagTam;
  23. $result = $conexion->query($sql);


eso para que cuente los resultados y vea cuantas paginas - paginadas va a crear, y esto para mostrar la paginacion en si...

Código PHP:
Ver original
  1. if( $numPags > 1)
  2.                 {          
  3.                 for($x = 1; $x <= $numPags; $x++)
  4.                 {
  5.                     if( $pag == ($x) )
  6.                         if( $x == 9 )
  7.                             echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_black_9">'.($x).'</a>';
  8.                             else
  9.                                 if( $x >= 9 )
  10.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_black">'.($x).'</a>';
  11.                                     else
  12.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_white">'.($x).'</a>';
  13.                                    
  14.                                 else
  15.                                     if( $x <= 9 )
  16.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class="line0 counter_red" >'.($x).'</a>';
  17.                                     else
  18.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_grey">'.($x).'</a>';
  19.                 }
  20.  
  21.                 }
  22.                 else
  23.                 echo '</div>';


Gracias!
__________________
Ser libre no es hacer lo ke uno kiere, sino kerer lo ke uno hace....
  #2 (permalink)  
Antiguo 28/02/2012, 04:49
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: boton siguiente, anterior en paginacion php

Creo que te refieres a esto:
dónde $pag suongo que es el valor por $_GET que el usuario a clickeado:
Código PHP:
Ver original
  1. //Un botón por pag de la actual a la actual + 14
  2. for($i = $pag; $i<($pag+14);$i++)
  3. {
  4.     echo "<a href='anuncios.php?pag=$i'>Página $i</a>";
  5. }
  6. //A partir de la página 15
  7. echo "<a href='anuncios.php?pag=".($i+1)."'>Siguiente</a>";
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 28/02/2012, 13:27
Avatar de protoameeba  
Fecha de Ingreso: septiembre-2005
Mensajes: 195
Antigüedad: 18 años, 7 meses
Puntos: 3
Respuesta: boton siguiente, anterior en paginacion php

Hola he hecho esto:



Código PHP:
Ver original
  1. if( $numPags > 1)
  2.                 {          
  3.                 for($x = 1; $x <($pag+14); $x++)
  4.                 {
  5.                     if( $pag == ($x) )
  6.                         if( $x == 9 )
  7.                             echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_black_9">'.($x).'</a>';
  8.                             else
  9.                                 if( $x >= 9 )
  10.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_black">'.($x).'</a>';
  11.                                     else
  12.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_white">'.($x).'</a>';
  13.                                    
  14.                                 else
  15.                                     if( $x <= 9 )
  16.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class="line0 counter_red" >'.($x).'</a>';
  17.                                     else
  18.                                     echo '<script language="javascript">function showPage'.($x).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x).'();" class= "pag-Actual line0 counter_grey">'.($x).'</a>';
  19.                 }
  20.                 echo '<script language="javascript">function showPage'.($x+1).'(){ var variable_post="Mi texto recargado"; $.post("anuncios.php?pag='.($x+1).'", { variable: variable_post }, function(data){ $("#container").html(data); }); }</script><a href="#" onclick="javascript:showPage'.($x+1).'();" class= "pag-Actual line0 counter_black">siguiente</a>';
  21.                 }
  22.                 else
  23.                 echo '</div>';

Pero algo estoy haciendo mal...

me muestra bien 14 resultados y el boton siguiente, pero al darle al numero 2 por ejemplo, lo que hace es que me muestra lo que hay en la paginacion 2, pero ademas me saca la paginacion 15 y 16... y si le doy a siguiente me suma los 14 que existan y me muestra el doble 28!!

No lo veo! y eso que llevo un rato si me puedes echar una mano amigo!!!! gracias!!!
__________________
Ser libre no es hacer lo ke uno kiere, sino kerer lo ke uno hace....
  #4 (permalink)  
Antiguo 29/02/2012, 01:47
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: boton siguiente, anterior en paginacion php

El valor de "anuncios.php?pag='.($x).'" es $pag + $x y no $x.
Si le asignas el valor $x, el número de página será siempre del 1 al 14 sin hacer caso de la variable $pag. El valor del parámetro pag es $pag+$x.
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: html, mysql, paginacion, registro, siguiente, sql, botones, variables, anteriores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:07.