Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

Paginación en Postgres

Estas en el tema de Paginación en Postgres en el foro de PostgreSQL en Foros del Web. Saludos a todos He hecho una pequeña función para paginar registros de la base de datos postgres, pero no me funciona, el problema que presenta ...
  #1 (permalink)  
Antiguo 26/09/2008, 16:47
 
Fecha de Ingreso: febrero-2008
Mensajes: 65
Antigüedad: 16 años, 2 meses
Puntos: 0
Paginación en Postgres

Saludos a todos

He hecho una pequeña función para paginar registros de la base de datos postgres, pero no me funciona, el problema que presenta es que trae todos los registros sin tomar en cuenta el script de paginacion. Les muestro el codigo para ver si me pueden orientar.

Código PHP:
function paging($sqlPaging=""
{
     
$sqlPaging=$sqlPaging;
     
$registros 20;
     
$pagina = (isset($_GET['pagina']))? $_GET['pagina'] : false;
     if (!
$pagina
     { 
      
$inicio 0
      
$pagina 1
     } 
     else 
     { 
      
$inicio = ($pagina 1) * $registros;
     } 
     
$resultados=$sqlPaging." OFFSET $inicio LIMIT $registros";
     
$total_registros $this->num_rows($resultados); 
     echo 
"<table border='1' align='center'>
               <tr>
               <td>"
;
     
$total_paginas ceil($total_registros $registros);
     if(
$total_registros
     {                
          if((
$pagina 1) > 0
          {
                   echo 
"<a href=\"users.php?pagina=".($pagina-1)."\">< Anterior</a> ";
       }
       for (
$i=1$i<=$total_paginas$i++)
           { 
                if (
$pagina == $i
                   echo 
"<b>".$pagina."</b> "
                else
                   echo 
"<a href=\"users.php?pagina=$i\">$i</a> "
           }
           if((
$pagina 1)<=$total_paginas
           {
                echo 
" <a href=\"users.php?pagina=".($pagina+1)."\"> Siguiente ></a>";
           }
            echo 
"";                
    }                    
  } 
Agradecería toda la ayuda y orientación de su parte
Muchas gracias

Walleska
  #2 (permalink)  
Antiguo 30/01/2009, 14:03
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Paginación en Postgres

Código PHP:
<?

include ("class.db.php");

function 
paging($sqlPaging
{
     
$db = new db();
     
$sqlPaging $db->query($sqlPaging);
     
$registros 20;
     
$pagina = (isset($_GET['pagina']))? $_GET['pagina'] : false;
     if (!
$pagina
     { 
      
$inicio 0
      
$pagina 1
     } 
     else 
     { 
      
$inicio = ($pagina 1) * $registros;
     } 
     
$resultados=$sqlPaging." OFFSET $inicio LIMIT $registros";
     
$total_registros $db->num($resultados); 
     echo 
"<table border='1' align='center'>
               <tr>
               <td>"
;
     
$total_paginas ceil($total_registros $registros);
     if(
$total_registros
     {                
          if((
$pagina 1) > 0
          {
                   echo 
"<a href=\"$_SERVER[PHP_SELF]?pagina=".($pagina-1)."\">< Anterior</a> ";
       }
       for (
$i=1$i<=$total_paginas$i++)
           { 
                if (
$pagina == $i
                   echo 
"<b>".$pagina."</b> "
                else
                   echo 
"<a href=\"$_SERVER[PHP_SELF]?pagina=$i\">$i</a> "
           }
           if((
$pagina 1)<=$totapagingl_paginas
           {
                echo 
" <a href=\"$_SERVER[PHP_SELF]?pagina=".($pagina+1)."\"> Siguiente ></a>";
           }
            echo 
"";                
    }                    
  }  

paging("SELECT * FROM comuna");


 
?>

Salu2
  #3 (permalink)  
Antiguo 05/03/2010, 05:37
cce
 
Fecha de Ingreso: junio-2009
Mensajes: 92
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Paginación en Postgres

Hola vmac179...estoy iniciandome en programacion de php y bases de datos, estoy utilizando postgresql...respecto a la paginacion, el codigo que esta en tu respuesta, como se implementa...es decir, para la presentacion visual en html, hay que agregar alguna otra funcion?...como seria un ejemplo practico en donde solo apareciera una pantalla en blanco y los links que diga anterior y posterior...no logro ver como implementarlo...Saludos y gracias.-
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 14:27.