Foros del Web » Programando para Internet » PHP »

Problema con código para paginación

Estas en el tema de Problema con código para paginación en el foro de PHP en Foros del Web. Buenas, En un formulario recojo unos valores para hacer unos listados según la categoría. Cuando los listo todos perfecto, código: $resultados =mysql_db_query("comercio","select * from tb_comercios"); ...
  #1 (permalink)  
Antiguo 18/09/2008, 11:42
 
Fecha de Ingreso: septiembre-2008
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 15 años, 7 meses
Puntos: 0
Problema con código para paginación

Buenas,

En un formulario recojo unos valores para hacer unos listados según la categoría.
Cuando los listo todos perfecto,
código:
$resultados =mysql_db_query("comercio","select * from tb_comercios");

cuando listo indicando que venga de la categoría Ocio, perfecto también:

$resultados =mysql_db_query("comercio","select * from tb_comercios WHERE activitat LIKE 'Ocio");

El problema es, para no hacer más archivos, quiero poner lo siguiente:
$resultados =mysql_db_query("comercio","select * from tb_comercios WHERE activitat LIKE '$Actividad"); la variable la defino previamente del form

Me lista la primera parte, si repagino en 5, por ejemplo, me lista los 5 primeros, me calcula cuantas páginas más hay me añade el siguiente, pero cuando pincho sobre la página 2 me da el error - sin resultados

copio el código del documento:
<?

function conectar()
{
$base_de_datos = "comercio";
$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 = 3;

if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}


?>

<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_db_query("comercio","select * from tb_comercios WHERE activitat LIKE '$Actividad'");
$total_registros = mysql_num_rows($resultados);
$resultados = mysql_db_query("comercio","SELECT * FROM tb_comercios WHERE activitat LIKE '$Actividad' ORDER BY nom DESC LIMIT $inicio, $registros");
$total_paginas = ceil($total_registros / $registros);

if($total_registros){


while($articulo=mysql_fetch_array($resultados)) {

echo "<b>".$articulo["nom"]."</b><br>";
echo "<font color='#666666'>".$articulo["carrer"]."</font><br><br><br>";

}

} else {
echo $Actividad;
echo "<font color='darkgray'>(sin resultados)</font>";


}

mysql_free_result($resultados);

if($total_registros) {

echo "<center>";

if(($pagina - 1) > 0) {
echo "<a href='activitat.php?pagina=".($pagina-1)."'?$Actividad>< Anterior</a> ";
}

for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i)
echo "<b>".$pagina."</b> ";
else
echo"<a href='activitat.php?pagina=$i,'>$i</a> ";
}

if(($pagina + 1)<=$total_paginas) {
echo " <a href='activitat.php?pagina=".($pagina+1)."'>Siguie nte </a>";
}

echo "</center>";

}
?>
</body>
</html>
<? mysql_close($db);?>


a alguien se le ocurre dónde está el fallo?

Gracias por adelantado, saludos
  #2 (permalink)  
Antiguo 18/09/2008, 14:09
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 16 años, 6 meses
Puntos: 101
Respuesta: Problema con código para paginación

Hola,
Para no tener tantos problemas con el paginado, usa uno ya echo (una clase) como:
http://jpinedo.webcindario.com/scripts/paginator/ (no lo e usado)
http://phppaging.phperu.net/ (muy bueno)***
http://videosyao.atwebpages.com/EasyPaginAjax/ (este es echo por mi)**
Si tienes algun problema con mi paginador (si es que lo usas), mandame un MP
Suerte
Salu2
* Mienstras mas "*" mas recomendado por mi es.
__________________
Half Music - www.halfmusic.com
  #3 (permalink)  
Antiguo 23/09/2008, 05:13
 
Fecha de Ingreso: septiembre-2008
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Problema con código para paginación

gracias pato y demonio, le echo un vistazo y os cuento, por el momento seguía igual
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 23:58.