• Domingo 22 de Diciembre de 2024, 09:32

Autor Tema:  Paginación En Php  (Leído 1675 veces)

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Paginación En Php
« en: Viernes 9 de Mayo de 2008, 17:55 »
0
Si, si lo sé no tiene nada que ver con Python :P

Lo que pasa es que tenía que ver como paginar un programa de la empresa y pos nunca había hecho esto y buscando manuales en Internet, pos son muy largos y mamones y tediosos, 'tons me propuse a hacer mi balurdo paginador con php.


<!--php1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>PHP </td></tr><tr><td id='CODE'><!--ephp1--><code>[color= #000000]
[color= #0000BB]<?php
  [/color][color= #FF8000]//ESTO DEL PRINCIPIO NO TIENE NADA EN PARTICULAR,
  //SOLAMENTE UNA CONSULTA Y UNA IMPRESION DE DATOS
  [/color][color= #007700]include [/color][color= #DD0000]'configuration.php'[/color][color= #007700];
  echo [/color][color= #0000BB]$query [/color][color= #007700]= [/color][color= #DD0000]"SELECT * FROM tbsdpel_users LIMIT "[/color][color= #007700].[/color][color= #0000BB]$show[/color][color= #007700].[/color][color= #DD0000]", 10"[/color][color= #007700];
  [/color][color= #0000BB]$result [/color][color= #007700]= [/color][color= #0000BB]mysql_query[/color][color= #007700]([/color][color= #0000BB]$query[/color][color= #007700]) or die([/color][color= #0000BB]mysql_error[/color][color= #007700]());
  while([/color][color= #0000BB]$row[/color][color= #007700]=[/color][color= #0000BB]mysql_fetch_array[/color][color= #007700]([/color][color= #0000BB]$result[/color][color= #007700]))
  {
    [/color][color= #0000BB]$id [/color][color= #007700]= [/color][color= #0000BB]$row[/color][color= #007700][[/color][color= #0000BB]0[/color][color= #007700]];
    [/color][color= #0000BB]$usu [/color][color= #007700]= [/color][color= #0000BB]$row[/color][color= #007700][[/color][color= #0000BB]1[/color][color= #007700]];
    [/color][color= #0000BB]$pass [/color][color= #007700]= [/color][color= #0000BB]$row[/color][color= #007700][[/color][color= #0000BB]2[/color][color= #007700]];
    [/color][color= #0000BB]$mail [/color][color= #007700]= [/color][color= #0000BB]$row[/color][color= #007700][[/color][color= #0000BB]4[/color][color= #007700]];
    [/color][color= #0000BB]$nombre [/color][color= #007700]= [/color][color= #0000BB]$row[/color][color= #007700][[/color][color= #0000BB]7[/color][color= #007700]];
   
    echo [/color][color= #DD0000]"<br>"[/color][color= #007700].[/color][color= #0000BB]$id[/color][color= #007700].[/color][color= #DD0000]" "[/color][color= #007700].[/color][color= #0000BB]$usu[/color][color= #007700].[/color][color= #DD0000]" "[/color][color= #007700].[/color][color= #0000BB]$pass[/color][color= #007700].[/color][color= #DD0000]" "[/color][color= #007700].[/color][color= #0000BB]$mail[/color][color= #007700].[/color][color= #DD0000]" "[/color][color= #007700].[/color][color= #0000BB]$nombre[/color][color= #007700];
  }
 
  [/color][color= #FF8000]//ACA VIENE LO WENO; NO USE LA CONSULTA ANTERIOR,
  //POR QUE COMO DA LIMITE 'TONS NO ME DA LOS DATOS REALES
  [/color][color= #0000BB]$query_saber [/color][color= #007700]= [/color][color= #DD0000]"SELECT * FROM tbsdpel_users"[/color][color= #007700];
  [/color][color= #0000BB]$result_saber [/color][color= #007700]= [/color][color= #0000BB]mysql_query[/color][color= #007700]([/color][color= #0000BB]$query_saber[/color][color= #007700]) or die([/color][color= #0000BB]mysql_error[/color][color= #007700]());
 
  [/color][color= #FF8000]//EN ESTA VARIABLE SE GUARDAN LA CANTIDAD DE REGISTROS GENERADOS
  [/color][color= #0000BB]$numrows [/color][color= #007700]= [/color][color= #0000BB]mysql_num_rows[/color][color= #007700]([/color][color= #0000BB]$result_saber[/color][color= #007700]);
 
  [/color][color= #0000BB]$variable [/color][color= #007700]= [/color][color= #0000BB]$numrows[/color][color= #007700]/[/color][color= #0000BB]10[/color][color= #007700];
  [/color][color= #0000BB]$modulativa [/color][color= #007700]= ([/color][color= #0000BB]$numrows[/color][color= #007700]%[/color][color= #0000BB]10[/color][color= #007700])/[/color][color= #0000BB]10[/color][color= #007700];
 
  [/color][color= #FF8000]//SI ME DA CON DECIMALES LO REDONDEO AL MENOR
  //NO USE floor POR QUE NO LO SABIA HACER HASTA
  //QUE EMPECE A HACER LA DOCUMENTACION DEL SCRIPT ][color= #0000BB]$variable [/color][color= #007700]= [/color][color= #0000BB]$variable [/color][color= #007700]- [/color][color= #0000BB]$modulativa[/color][color= #007700];
  [/color][color= #0000BB]$n [/color][color= #007700]= [/color][color= #0000BB]0[/color][color= #007700];
  [/color][color= #0000BB]$contar [/color][color= #007700]= [/color][color= #0000BB]1[/color][color= #007700];
 
  [/color][color= #FF8000]//EMPIEZO A IMPRIMIR LAS PAGINAS
  [/color][color= #007700]echo [/color][color= #DD0000]'<br><a xhref="pruebas.php?show=0">0</a> '[/color][color= #007700];
  while([/color][color= #0000BB]$n[/color][color= #007700]<[/color][color= #0000BB]$variable[/color][color= #007700])
  {
    [/color][color= #0000BB]$show [/color][color= #007700]= [/color][color= #DD0000]'10'[/color][color= #007700];
    echo [/color][color= #DD0000]'<a xhref="pruebas.php?show='[/color][color= #007700].[/color][color= #0000BB]$show[/color][color= #007700]*[/color][color= #0000BB]$contar[/color][color= #007700].[/color][color= #DD0000]'">'[/color][color= #007700].[/color][color= #0000BB]$contar[/color][color= #007700].[/color][color= #DD0000]'</a> '[/color][color= #007700];
    [/color][color= #0000BB]$contar[/color][color= #007700]++;
    [/color][color= #0000BB]$n[/color][color= #007700]++;
  }
[/color][color= #0000BB]?>
[/color]
[/color]
</code><!--php2--></td></tr></table><div class='postcolor'><!--ephp2-->

PD. No lo pude hacer en el blog por que el Wordpress me convertía en código HTML.

Ojala les sirva.
Chao
El pasado son solo recuerdos, el futuro son solo sueños

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Paginación En Php
« Respuesta #1 en: Viernes 9 de Mayo de 2008, 18:21 »
0
Floor
http://mx.php.net/floor

Ceil
http://mx.php.net/ceil


En este caso , se tiene que usar ceil, para redondear hacia arriba pues si el resultado de la ultima pagina es menor a $show , (registros por pagina) y redondeas hacia abajo, estarias omitiendo resultados

Mas de uno agradecemos ese codigo  :smartass:

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Paginación En Php
« Respuesta #2 en: Viernes 9 de Mayo de 2008, 18:32 »
0
Sipi, me dí cuenta haciendo la documentación jeje :P :P
Además se puede mejorar un resto, la parte final la deje de esta forma para no gastar tanta variable.

<!--php1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>PHP </td></tr><tr><td id='CODE'><!--ephp1--><code>[color= #000000]
[color= #0000BB]<?php
  $n [/color][color= #007700]= [/color][color= #0000BB]0[/color][color= #007700];
  
  [/color][color= #FF8000]//EMPIEZO A IMPRIMIR LAS PAGINAS
  //echo '<br><a href="paginacion.php?show=0">0</a> ';
  [/color][color= #007700]echo [/color][color= #DD0000]'<br>'[/color][color= #007700];
  while([/color][color= #0000BB]$n[/color][color= #007700]<=[/color][color= #0000BB]$variable[/color][color= #007700])
  {
    [/color][color= #0000BB]$show [/color][color= #007700]= [/color][color= #DD0000]'10'[/color][color= #007700];
    echo [/color][color= #DD0000]'<a href="paginacion.php?show='[/color][color= #007700].[/color][color= #0000BB]$show[/color][color= #007700]*[/color][color= #0000BB]$n[/color][color= #007700].[/color][color= #DD0000]'">'[/color][color= #007700].[/color][color= #0000BB]$n[/color][color= #007700].[/color][color= #DD0000]'</a> '[/color][color= #007700];
    [/color][color= #0000BB]$n[/color][color= #007700]++;
  }
[/color][color= #0000BB]?>[/color]
[/color]
</code><!--php2--></td></tr></table><div class='postcolor'><!--ephp2-->
El pasado son solo recuerdos, el futuro son solo sueños

neorent

  • Miembro MUY activo
  • ***
  • Mensajes: 249
    • Ver Perfil
    • http://www.laestokada.cl
Re: Paginación En Php
« Respuesta #3 en: Lunes 19 de Mayo de 2008, 18:34 »
0
sabes, hace un tiempo que utilizo dreamweber, y bueno utilizo su propio paginator que trae, es super facil de usar, no se si sirve eso, pero espero que si.
Un Tigre Nunka Kambia Sus Rayas