Foros del Web » Programando para Internet » PHP »

Paginacion, X por pagina

Estas en el tema de Paginacion, X por pagina en el foro de PHP en Foros del Web. Hola muy buenas, a ver si alguien me puede echar una mano... Tengo un script desarrollado de paginacion, va muy bien, la unica pega.. es ...
  #1 (permalink)  
Antiguo 06/04/2011, 05:53
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 10 años, 4 meses
Puntos: 0
Paginacion, X por pagina

Hola muy buenas, a ver si alguien me puede echar una mano... Tengo un script desarrollado de paginacion, va muy bien, la unica pega.. es que si tengo 1000 paginas me las muestra todas!!!
Como podria hacer, que solo muestre por ejemplo 10 y segun vas avanzando o retrocediendo en las paginas va mostrando siempre 10...

El codigo es el siguiente, a ver si me ayudais un poco que no se por donde cogerlo...

Código PHP:

$sqlM
="SELECT id_empresa, empresa, tel, nombre, email, activo,     seg_cont, notas, fecha FROM clientes ORDER BY fecha ASC";    

    
$resM=$db->GetAll($sqlM);
    
    
$numMSG=sizeof($resM);
    
$smarty->assign('registros'$numMSG);
    
//PAGINACIÓN

if($numMSG >= 1){
        

    
$msgXpag=21;
    
$numeroP =ceil($numMSG/$msgXpag);
    
    if(isset(
$_GET['p'])){
      
$pagAct=sanitize($_GET['p'], INT);    
    }else{
      
$pagAct=1;    
    }    
    
    
    
$inicio=($pagAct-1)*$msgXpag;
    
    if(
$pagAct !=$numeroP){
       
$fin=$msgXpag*$pagAct;    
    }else{
       
$fin=$numMSG;    
    }
    
// Asignacion de Paginas
    
    
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php"><<</a></div> ';
    
//Si la pagina actual no es 1, le restamos 1
    
    
if($pagAct 1){
        
$siguiente $pagAct 1;
          
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php?p='.$siguiente.'"><</a></div> ';
    }else{
        
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php"><</a></div> ';
    }    
    
    for(
$j=1$j<=$numeroP$j++){
      if(
$pagAct==$j){
          
$paginacion .='<div class="verdeQu">'.$j.'</div>';
      }else{
           
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php?p='.$j.$miGet.'">'.$j.'</a></div> ';
      }    
    }
//Siguiente
if($pagAct <= || $numeroP != $pagAct){
        
$sante $pagAct 1;
          
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php?p='.$sante.'">></a></div> ';
    }else{
        
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php?p='.$pagAct.'">></a></div> ';
    }    
        

           
$paginacion .=' <div><a class="verdeQ" href="Registro-Clientes.php?p='.$numeroP.'">>></a></div> '
    
     
// FIN de asignacion de paginas

    
$smarty->assign('paginacion'$paginacion); 
Muchas gracias :D
  #2 (permalink)  
Antiguo 06/04/2011, 10:34
Avatar de ikaroraul  
Fecha de Ingreso: octubre-2006
Ubicación: La Paz
Mensajes: 391
Antigüedad: 13 años, 2 meses
Puntos: 16
Respuesta: Paginacion, X por pagina

pues deberias poner en tu QUERY un LIMIT 0,10
__________________
Msn: [email protected]
  #3 (permalink)  
Antiguo 06/04/2011, 10:53
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 13 años, 9 meses
Puntos: 96
Respuesta: Paginacion, X por pagina

Saludos

ikaroraul No solamente eso!. ya que siempre se mostraran los 10 primeros registros. Yurisimo Dependiendo de la pagina que vallas haces la siguiente operación

Código PHP:
Ver original
  1. $registros = 10; //Cada cuanto se paginara
  2. $inicio = ($pagina - 1) * $registros;
  3. LIMIT $inicio, $registros
__________________
:.:Nano.:: @nano_hard - Retornando al foro

Última edición por Nano_; 06/04/2011 a las 14:01
  #4 (permalink)  
Antiguo 07/04/2011, 12:19
Avatar de ikaroraul  
Fecha de Ingreso: octubre-2006
Ubicación: La Paz
Mensajes: 391
Antigüedad: 13 años, 2 meses
Puntos: 16
Respuesta: Paginacion, X por pagina

Cita:
Iniciado por ikaroraul Ver Mensaje
pues deberias poner en tu QUERY un LIMIT 0,10
asi es en valor de 0 tiene que ser una VARIABLE, yo hice un paginador, pero ahora ni yo lo entiendo, si gustas hay una clase para mi muy buena

http://phppaging.phperu.net/

Exelente para paginar resultados sin hacernos lios,

Ahora quieres algo mas cool, PAGINACION, THEMES, BUSCADOR, etc., pues te recomiendo jqgrid

http://www.trirand.com/blog/

espero sea de ayuda

DAME KARMA!!!!
__________________
Msn: [email protected]
  #5 (permalink)  
Antiguo 11/04/2011, 06:22
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Paginacion, X por pagina

Hola, gracias por responder !!

Es decir cada vez que pagino un boton , hago la consulta a la base de datos y le asigno el LIMIT
con inicio y el numero de registro... ?
  #6 (permalink)  
Antiguo 11/04/2011, 09:31
 
Fecha de Ingreso: diciembre-2010
Ubicación: Alicante
Mensajes: 74
Antigüedad: 9 años
Puntos: 3
Respuesta: Paginacion, X por pagina

Ha una forma mas sencilla y es coincidencia por que yo lo he hecho.... hoy....
Yo la he hecho en ASP...Si sabes ASP te la pongo.... ya me dices...

Lo que yo hago es sabiendo el numero de paginas que tengo...

for($j=$pagina_Actual-2; $j<$pagina_Actual+5;$j++)
{
Dentro muestro las paginas dentro de un <a>
}


Luego le meto unos if dentro...
Por ejemplo si $j es igual al total $total_paginas hago un break y sale del FOR asi me ahorro que salgan más páginas de las que tengo...

Si sabes codigo PHP... sabras codigo ASP osea que te lo pongo para haber si te sirve :)

No necesito marear con SQL debido a que ASP me ha obtenido muchas cosas...
Pero si tienes problemas con el numero de paginas total...
Simplemente haces un count y divides entre el numero de elemento que quieres por pagina y listo... Tienes el total :D SUERTE
Código:
response.write "<div  align='center' style=' font-size:14px; font-family:Arial, Helvetica, sans-serif'> <br><br><br>"
if pagina>1 then
	response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& pagina-1 &"'>Anterior</a>&nbsp;"
end if
										
for i=pagina-2 To pagina+5
											
	if i=pagina then 
		response.write "<b>"& i &"</b> "
	elseif i<1 then
		response.write " "
	else
		response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& i &"'>"& i &"</a> "
	end if
											
	if i=numpaginas then exit for
								
	if i=pagina+5 then
		response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& i+1 &"'>...</a> "
	end if	
										
	next
if pagina<numpaginas then
	response.write "&nbsp;<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& pagina+1 &"'>Siguiente</a> "
end if
  #7 (permalink)  
Antiguo 11/05/2011, 04:46
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Paginacion, X por pagina

La verdad es que lo estoy intentando, pero no me sale lo que quiero...
  #8 (permalink)  
Antiguo 11/05/2011, 06:18
 
Fecha de Ingreso: agosto-2009
Mensajes: 72
Antigüedad: 10 años, 3 meses
Puntos: 2
Respuesta: Paginacion, X por pagina

Cita:
Iniciado por ikaroraul Ver Mensaje
asi es en valor de 0 tiene que ser una VARIABLE, yo hice un paginador, pero ahora ni yo lo entiendo, si gustas hay una clase para mi muy buena

http://phppaging.phperu.net/

Exelente para paginar resultados sin hacernos lios,

Ahora quieres algo mas cool, PAGINACION, THEMES, BUSCADOR, etc., pues te recomiendo jqgrid

http://www.trirand.com/blog/

espero sea de ayuda

DAME KARMA!!!!


Amigo eso que has mostrado en http://www.trirand.com/blog/ es genial, no lo conocia... ahora buscando e investigando es bastante caro!!! http://www.trirand.net/licensing.aspx... me encanto, pero es muy caro, y prefiero hacerlo con Dreamweaver :)
  #9 (permalink)  
Antiguo 11/05/2011, 06:42
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Paginacion, X por pagina

Nadie se le ocurre una manera de implementarlo ?? Llevo 1000 horas, y no lo consigo...
A ver si alguien me puede dar un empujoncillo mas...
  #10 (permalink)  
Antiguo 11/05/2011, 07:01
 
Fecha de Ingreso: agosto-2009
Mensajes: 72
Antigüedad: 10 años, 3 meses
Puntos: 2
Respuesta: Paginacion, X por pagina

Cita:
Iniciado por Yurisimo Ver Mensaje
Nadie se le ocurre una manera de implementarlo ?? Llevo 1000 horas, y no lo consigo...
A ver si alguien me puede dar un empujoncillo mas...
Amigo, yo lo hago con Dreamweaver, en realidad no lo programo, me lo hace solo el programa (muy mal) pero si quieres te copio el codigo, solo tendrias que cambiarle las variables y funcionaria...

Avisame, saludos!

Etiquetas: paginacion
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 19:01.