Por favor,Alguien sabe como es para poner los numeros: <1 2 2...> debajo del foro

RUBIA
24 de Mayo del 2005
Por favor,Alguien sabe como es para poner los numeros: <1 2 3 4 ...> debajo del foro cuando pase de los 10 mensajes???

Por favor! ayuda!!

chapu
24 de Mayo del 2005
Yo lo resolvi a mano, es decir haciendo la paginacion dividiendo el total por X cantidad por pagina, en cada numero paso el id del primero de esa pagina por ejemplo. .. proba es facil...

Rubia
24 de Mayo del 2005
驴C贸mo? No se c贸mo es! me lo podr铆as poner??


Gracias

chapu
24 de Mayo del 2005
Mira.. el codigo no lo tengo..
siempre en una misma pagina...
primero calcula el total de registros.
Despues dividi por X registros por paginas.
Segun la pagina que toque, vas salteando cuales no mostrar con un iterador que va incrementado

no es una forma optima ya que siempre buscas TODOS los registros y mostras solo los que estan en ese intervalo. Ahora no se me ocurre una forma mas optima en rendimiento.. tendria que pensarlo mejor

al final para poner los numeros de pagina simplemente hace un "for" desde 1 hasta la cantidad de paginas que devolvio la division anterior. poniendo en cada uno un link al primero ej: 10 registros por pagina, pone en la pagina 3 un link al 31

no es dificil.. pensalo

Zelda Predator
24 de Mayo del 2005
Hola,

Te pongo un script de paginaci贸n de resultados con consulta a una db Mysql, a ver si es eso lo que necesitas:

<?
//Este script se llama "paginar.php" y debe ser incluido en una p谩gina
//llamada "listado.php" (puedes cambiar el nombre de las p谩ginas, pero
//recuerda cambiar "listado.php" por el nombre que decidas tambi茅n en
//este c贸digo.
//o sea, que debes crear dos p谩ginas PHP, una con este c贸digo y otra
//que en el lugar donde quieras que aparezca la tabla incluya la
//instrucci贸n "include("paginar.php");"

//En el ejemplo supongo que conectas a una db MySQL que tiene una tabla
//con cuatro campos llamados "CAMPO1", "CAMPO2", "CAMPO3", "CAMPO4"
//que quieres leer y mostrar en forma de tabla,
//paginando los resultados de 20 en 20.

$pg=$_GET['pg'];
//conexion a la base de datos
$host="localhost";
$user="usuario";
$pass="password";
$db="base_de_datos";
$tabla="tabla";



//conectamos con la base de datos

$con=mysql_connect($host,$user,$pass);
mysql_select_db($db,$con);

//establecemos condiciones de paginacion

if (!isset($_GET['pg'])){
$pg = 0;
}
$cantidad = 20; //Aqui es donde indicas el n煤mero de registros por p谩gina
$inicial = $pg * $cantidad;

//realizamos la busqueda en la base de datos
//en este supuesto consulto todos los datos de la tabla, pero
//puedes acotar los resultados con where.
$pegar = "SELECT * FROM $tabla LIMIT $inicial,$cantidad"; //Aqui es donde puedes acotar la consulta con where
$cad = mysql_db_query($db,$pegar) or die (mysql_error());

//calculamos las paginas a mostrar
//como no he acotado la consulta con where, simplemente
//cuento todos los registros almacenados.
$contar = "SELECT * FROM $tabla"; //cuenta todos los registros, si has acotado con where, recuerda ponerlo tambi茅n aqui
$contarok = mysql_db_query($db,$contar);
$total_records = mysql_num_rows($contarok);
$pages = intval($total_records / $cantidad);

//imprimiendo los resultados, primero los encabezaddos de las columnas de la tabla
echo "<table width=100% align=center border=0 cellspacing=2 cellpadding=2 bgcolor=#FFFFFF>";
echo "<tr bgcolor=#666666>";
echo "<td>Titulo_Columna1</td>";
echo "<td>Titulo_Columna2</td>";
echo "<td>Titulo_Columna3</td>";
echo "<td>Titulo_Columna4</td>";


//imprimiendo los resultados, ahora los datos en filas
while ($array = mysql_fetch_array($cad))
{
echo "<tr bgcolor=#EBF0F9>";
echo "<td>",$array[CAMPO1],"</td>";
echo "<td>",$array[CAMPO2],"</td>";
echo "<td>",$array[CAMPO3],"</td>";
echo "<td>",$array[CAMPO4],"</td>";

} //fin imprimir resultados
echo "</table>";
// Cerramos la conexi贸n a la base
$con=mysql_close($con);

//creando los enlaces de paginacion de resultados (los numeritos 1,2,3,4... y Anterior/Siguiente)

echo "<center><p>";
if ($pg <>0)
{
$url = $pg - 1;
echo "<font><a href='listado.php?pg=".$url."'>&laquo; Anterior</a>&nbsp;</font>";
}
else {
echo " ";
}
for ($i = 0; $i<($pages + 1); $i++) {
if ($i == $pg) {
echo "<font><b>&nbsp;$i&nbsp;</b></font>";
}
else {
echo "<font><a href='listado.php?pg=".$i."'>".$i."</a>&nbsp;</font>";
}
}
if ($pg < $pages) {
$url = $pg + 1;
echo "<font><a href='listado.php?pg=".$url."'>Seg眉ent &raquo;</a></font>";
}
else {
echo " ";
}
echo "</p></center>";
?>