Foros del Web » Programando para Internet » PHP »

Problema paginacion

Estas en el tema de Problema paginacion en el foro de PHP en Foros del Web. Código PHP: <? function  conectar ()  {       $base_de_datos  =  "repsertrade" ;      $db_usuario  =  "root" ;       $db_password  =  "" ;       if (!( $link  =  ...
  #1 (permalink)  
Antiguo 24/08/2011, 05:41
 
Fecha de Ingreso: julio-2011
Mensajes: 25
Antigüedad: 15 años, 2 meses
Puntos: 1
Problema paginacion

Código PHP:
<?
function conectar() 
{ 
    
$base_de_datos = "repsertrade";
    
$db_usuario = "root"; 
    
$db_password = "";  
    if (!(
$link = mysql_connect("localhost", $db_usuario, $db_password))) 
    { 
        echo 
"Error conectando a la base de datos."; 
        exit(); 
    } 
    if (!
mysql_select_db($base_de_datos, $link)) 
    { 
        echo 
"Error seleccionando la base de datos."; 
        exit(); 
    } 
    return 
$link; 
} 
$db = conectar();
$registros = 10;
if (!
$pagina) { 
    
$inicio = 0; 
    
$pagina = 1; 
} 
else { 
    
$inicio = ($pagina - 1) * $registros; 
} 
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Noticias</title>
<style>
    body { font-family: arial; font-size:12px}
</style>
</head>

<body>
    <?
    $resultados 
= mysql_query("SELECT id_art FROM articulos ");
    
$total_registros = mysql_num_rows($resultados); 
    
$resultados = mysql_query("SELECT * FROM articulos LIMIT $inicio, $registros");    
    
$total_paginas = ceil($total_registros / $registros);                       
    if(
$total_registros) {
                    echo 
"<table border = '1'> \n"; 
                    echo 
"<tr><td><font size=1>id</td><td><font size=1>Nombre</td><td><font size=1>Codigo</td></tr>\n";
                    
//<td align="middle" bgcolor="#DDDDDD" onmouseover='this.style.background="#FF0000"' onmouseout='this.style.background="#DDDDDD"'>
                    
while($articulo=mysql_fetch_array($resultados)) {
            echo 
"<tr><td ><font face='Arial' size='1'>".$articulo['id_art']."</font></td><td><font size=1>".$articulo['nombre']."</font></td><td><font size=1>".$articulo['cod_producto']."</font></td></tr> \n";
                    }
                    
                    
        } else {
            echo 
"<font color='darkgray'>(sin resultados)</font>";
    }
        echo 
"</table>"; 
    
mysql_free_result($resultados);                
    if(
$total_registros) {
        echo 
"<center>";
        if((
$pagina - 1) > 0) {
            echo 
"<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
        }
        for (
$i=1; $i<=$total_paginas; $i++){ 
            if (
$pagina == $i) {
                echo 
"<b>".$pagina."</b> "; 
            } else {
                echo 
"<a href='paginacion.php?pagina=$i'>$i</a> "; 
            }    
        }
        if((
$pagina + 1)<=$total_paginas) {
            echo 
" <a href='paginacion.php?pagina=".($pagina+1)."'>Siguiente ></a>";
        }
        
        echo 
"</center>";
    }
    
?>
</body>
</html>
<? mysql_close($db);?>

Tengo este codigo de paginación en el cual funciona todo menos la paginación.... realmente no se como hacer para que cambie y me enseñe los otros registros. Si alguien me ayudase sería de agradecer.
  #2 (permalink)  
Antiguo 24/08/2011, 05:45
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 18 años, 7 meses
Puntos: 253
Respuesta: Problema paginacion

El problema está en que no indicas de ninguna forma en qué página estás, ya que tu variable $pagina no sale de ningún lado. No la inicializas.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?

Etiquetas: html, mysql, paginacion, registro, sql, usuarios
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 15:34.