Foros del Web » Programando para Internet » PHP »

dividir las páginas de resultados

Estas en el tema de dividir las páginas de resultados en el foro de PHP en Foros del Web. Tengo un problema y necesito de su ayuda para solucionarlo. Necesito saber cómo hago cuando tengo una consulta a una base de datos cuyo resultado ...
  #1 (permalink)  
Antiguo 10/09/2003, 12:34
 
Fecha de Ingreso: febrero-2003
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta dividir las páginas de resultados

Tengo un problema y necesito de su ayuda para solucionarlo.

Necesito saber cómo hago cuando tengo una consulta a una base de datos cuyo resultado obtiene muchísimos registros, (200 o 300) para mostrar esta consulta en varias páginas , por ejemplo mostrando 20 registros en cada una o según el número que el usuario quiera obserrvar en un pantallazo.


Gracias por la ayuda que me puedan brindar.
  #2 (permalink)  
Antiguo 10/09/2003, 12:58
 
Fecha de Ingreso: julio-2002
Mensajes: 322
Antigüedad: 15 años, 4 meses
Puntos: 0
Eso se llama paginar y encontraras la respuesta en mensajes ya escritos en este foro y en muchos otros, es algo muy basico.

A ver si antes de preguntar miramos un poco lo que ya han preguntado otros!!!!!!!!!!!!!!!!!

Salu2

Ruben
http://www.losmejoresenlaces.com
  #3 (permalink)  
Antiguo 14/09/2003, 23:04
 
Fecha de Ingreso: septiembre-2003
Ubicación: Chile
Mensajes: 30
Antigüedad: 14 años, 2 meses
Puntos: 0
<?
// Datos de conexión a la base
$base="nombre_base";
$con=mysql_connect("host","base","pass");
mysql_select_db($base,$con);

if (!isset($pg))
$pg = 0; // $pg es la pagina actual
$cantidad=20; // cantidad de resultados por página
$inicial = $pg * $cantidad;

$pegar = "SELECT * FROM Tu_tabla ORDER BY campo LIMIT $inicial,$cantidad";
$cad = mysql_db_query($base,$pegar) or die (mysql_error());

$contar = "SELECT * FROM Tu_tabla ORDER BY campo";
$contarok= mysql_db_query($base,$contar);
$total_records = mysql_num_rows($contarok);
$pages = intval($total_records / $cantidad);

// Imprimiendo los resultados
while($array = mysql_fetch_array($cad)) {
$username=$array["campo"];
?>
<a href="para dar link" target="_blank">
<? echo $array["campo"]; ?></a><br>
<?
}

// Cerramos la conexión a la base
$con=mysql_close($con);

// Creando los enlaces de paginación
echo "<p>";
if ($pg <> 0)
{
$url = $pg - 1;
echo "<a href='usuarios2.php?pg=".$url."'>&laquo; Anterior</a>&nbsp;";
}
else {
echo " ";
}

for ($i = 0; $i<($pages + 1); $i++) {
if ($i == $pg) {
echo "<font face=Arial size=2 color=ff0000><b>&nbsp;$i&nbsp;</b></font>";
}
else {
echo "<a href='usuarios2.php?pg=".$i."'>".$i."</a>&nbsp;";
}
}

if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='usuarios2.php?pg=".$url."'>Siguiente &raquo;</a>";
}
else {
echo " ";
}
echo "</p>";
?>
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 09:33.