Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/04/2008, 16:45
Avatar de hgp147
hgp147
 
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
Re: Fallo en paginación

Proba con este, a mí me funciona bien:


Código PHP:
<?

//Limito la busqueda
$TAMANO_PAGINA 20;

include(
"conexion.php");


conectar();

//miro a ver el número total de campos que hay en la tabla con esa búsqueda

$rs mysql_query("SELECT id FROM tabla");
$num_total_registros mysql_num_rows($rs);

//calculo el total de páginas
$total_paginas ceil($num_total_registros $TAMANO_PAGINA);


//examino la página a mostrar y el inicio del registro a mostrar
$pagina $_GET["pagina"];


if (
ereg("^[0-9]{1,10}$"$_GET['pagina']) && $total_paginas >= $pagina){

$inicio = ($pagina 1) * $TAMANO_PAGINA;

}else{
    
$inicio 0;
$pagina 1;

}



//construyo la sentencia SQL
$rs mysql_query("SELECT id FROM tabla  LIMIT " $inicio "," $TAMANO_PAGINA);



while (
$fila mysql_fetch_object($rs)){

$id $fila->id;
 
echo 
$id;

}
//cerramos el conjunto de resultado y la conexión con la base de datos


desconectar();




// Enlaces de paginación
echo 'P&aacute;ginas: ';

// Si esta página es > 1, mostrar enlace de "anterior"
if ($pagina 1) {
    
$url 'index.php?pagina=' . ($pagina 1) . "";
    echo 
"<a href=\"$url\">< Anterior</a> ";
}



for (
$i 1$i <= $total_paginas$i++) {


if (
$pagina == $i){

echo 
$pagina " ";

}else{

echo 
"<a href=\"index.php?pagina=$i\">$i</a> ";
    
}
    
    
    
}



// Si esta página es < $total_paginas, mostrar enlace de "siguiente"
if ($pagina $total_paginas) {
    
$url 'index.php?pagina=' . ($pagina1) . "";
    echo 
"<a href=\"$url\">Siguiente ></a> ";
}

?>

El archivo de conexion tiene este código:

Código PHP:
<?

function conectar()
{

//Conexion con la base
mysql_connect ("localhost""""");

//selección de la base de datos con la que vamos a trabajar 
mysql_select_db("");

}

function 
desconectar()
{
    
mysql_close();
}



?>
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/