PHP - paginar con php

 
Vista:

paginar con php

Publicado por mariela (13 intervenciones) el 01/07/2005 12:45:47
hola estoy haciendo una pagina con php y my sql, tengo una base de datos , quiero mostrar una cierta cantidad de registros, dar enter y mostrar otra cantidad , y asi hasta q muestre todos los registos, a los cuales se puede realizar abm. creo que esto se llama paginacion.
bueno me gustaria si alguien puede ayudarme, estaria muy agradecida, ya q es lo unico q no me esta saliendo para terminar mi tesis y recibirme
bueno desde ya MUCHAS GRACIASSSSS!!!!
mariela
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:paginar con php

Publicado por Mike79 (669 intervenciones) el 01/07/2005 18:30:31
Una universitaria en ¿que carrera estudias? ¿Sistemas?, y que no sepa hacer páginación, pues....

Consulta el foro de MySql, por ayuda, ya que esto lo puedes hacer con el SQL de MySQL

Seria algo asi como "Select * from ElNombreDeMiTabla Limit 30 offset 0"
Donde 30 serian los números de registros y 0 de donde va a empezar.

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por mariela (13 intervenciones) el 24/07/2005 17:28:37
my rapida tu respuesta mike , pero la verdad que DE MUY MAL GUSTO!!!! porq el hecho de que estudie sistemas no quiere decir que tenga que saber todo, como bien te dije estoy ESTUDIANDO por lo tanto hay muchas cosas que no se, y vos sos ya sabes todo, porq si es asi, me das la receta para saber todo.
igual, muchisimas gracias por tu tiempo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por Mike79 (669 intervenciones) el 25/07/2005 19:26:27
Disculpa si te ofendio mi respuesta. Pero tu dijiste que estas haciendo tesis, en muchas univerisdades la tesis se hace cuando ya no debes materias, es decir cuando terminaste de estudiar.

Y dependiendo lo que estes estudiando y tu especialidad es lo que te enseñan. Yo no lo se todo, pero lo que preguntas, lo vi en mis materias de la escuela. Con Oracle y php. Y oracle no tiene limit asi que haciamos la paginación a mano.

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por marie (13 intervenciones) el 26/07/2005 00:07:30
bueno, dichoso de vos q te enseñaron oracle y php, porq si tenes razon, no tengo mas materias solo la tesis, pero te cuento q php lo estoy aprendiendo sola porq en la facu q yo voy ni en las tapas de los libros vemos eso, dimos cobol, pascal y otros mas
por eso es q hay muchas cosas q no se, si todo lo q se de php y mysql q es lo q ocupo para mi tesis lo aprendi sola, con ayuda de la web y una amiga q preparo su tesis en lo mismo
bueno, es todo, la verdad q cuando lei tu respuesta no era un buen dia para mi y siempre digo lo q pienso, y a veces tengo q pensar lo q digo
pero ya esta es lo q pense en ese momento
gracias igual por tu ayuda, pero cuando lei esperaba otra respuesta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por Mike79 (669 intervenciones) el 26/07/2005 03:18:14
Pues que mal que no te enseñen nada.
Yo tambien suelo contestar muy impulsivamente, por eso lleno con zarkasmos mis comentarios.

Perdon si te ofendi, pero tambien es culpa de los alumnos, que no exigen a los maestros.

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por Ricardo Figueroa (16 intervenciones) el 01/07/2005 19:18:07
oye pues la clave para hacer las paginaciones es utilizar en tus SQL's Limit
asi como te dice mike en su respuesta, Limit es funcion del SQL de MYSQL que te muestra los datos a partir del registro X , tantos registros.

Su sintaxis va mas o menos asi:
SELECT CAMPO1, CAMPO2, CAMPO3 FROM TABLA1 WHERE CAMPO1=CAMPO2 LIMIT 1, 50 ORDER BY CAMPO3

En "Limit 1, 50" el 1 indica el registro de donde comienza y el 50 el numero de registros a paginar, es decir que va a mostrarte solo 50 a partir del registro de inicio.

Entonces puedes observar que lo que tienes que ir incrementando es el "1" osea donde comienza, eso lo puedes hacer con un bucle, tambien debes de tener en cuenta factores como: Total de registros a paginar, Las paginas que tendras(total de paginas = Total de registros / De cuanto en cuanto quieres mostrar tus datos, en el ejemplo seria 50).
Oye por cierto debes de construir un navegador para las paginas (primero, ultimo siguiente anterior, aunque existen unos mas avanzados, para comenzar seria bueno solo con estos 4)

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por Mike79 (669 intervenciones) el 01/07/2005 20:02:30
Ahora si que ninguno de los dos.

Talvez yo me equivoque en el orden de los parametros, efectivamente el primero es donde empieza y el siguiente cuantos va a mostar, pero tu te equivocaste en cuanto al 1, los registros empiezan en la posición 0, no 1.

Quedaria asi:
"Select * from NombreDeMiTabla Limit 0 offset 30"
Donde 0 es donde va a empezar (en este caso el principio)
Y 30 cuantos registros va a mostrar.

La palabra offset es opcional:
http://dev.mysql.com/doc/mysql/en/select.html

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:paginar con php

Publicado por Raul Ruiz (1 intervención) el 06/07/2005 18:31:27
Miguel Angel, antes lo contestaste bien, es así:

"Select * from ElNombreDeMiTabla Limit 30 offset 0"
Donde 30 serian los números de registros y 0 de donde va a empezar.

Saludos a todos

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Aqui esta ojetes

Publicado por ArthasMX (8 intervenciones) el 26/07/2005 23:33:34
Ami no me importa compartir el codigo con los demas.
Espero se pueda mostrar bien...sino, escribanme a mi email
Apunten...

$per_page = 20;
$res = mysql_query("SELECT COUNT(*) FROM table", $link);
$row = mysql_fetch_array($res);
$num = $row[0];

if (($num % $per_page) == 0)
{ $total_pages = $num / $per_page; }
else
{ $total_pages = $num / $per_page +1; }

if (!isset($_GET['offset']))
{ $offset = 0; }
else
{ $offset = $_GET['offset']; }

// Para mostrarlo
$res2 = mysql_query("SELECT c1,c2,c3 FROM table LIMIT ".$offset.", ".$per_page."", $link);
echo "<table cellpadding=0 width=100% border=1>";
while ($row = mysql_fetch_array($res2))
{ echo "<tr><td>$row[c1]</td><td>$row[c2]</td><td>$row[c3]</td></tr>"; }
echo "</table>";

if (($offset == 0) and ($num<=10))
{ //print nothing
}
else if (($offset == 0) and ($num > 10))
{
$next = $offset + $per_page;
echo "<a href=\"".$_SERVER['PHP_SELF']."?offset=".$next."\">
<img src=\"z_next.gif\" border=0 title=\"Next record..\"></a>";
echo "<br><br>$next / $num";
}
else if (($offset > 0) and ($offset < $num - $per_page))
{
$prev = $offset - $per_page;
echo "<a href=\"".$_SERVER['PHP_SELF']."?offset=".$prev."\">
<img src=\"z_prev.gif\" border=0 title=\"Previous record..\"></a>";
echo " - "; $next = $offset + $per_page;
echo "<a href=\"".$_SERVER['PHP_SELF']."?offset=".$next."\">
<img src=\"z_next.gif\" border=0 title=\"Next record..\"></a>";
echo "<br><br>$next / $num";
}
else if (($offset > 0) and ($offset >= $num - $per_page))
{
$prev = $offset - $per_page;
echo "<a href=\"".$_SERVER['PHP_SELF']."?offset=".$prev."\">
<img src=\"z_prev.gif\" border=0 title=\"Previous record..\"></a>";
echo "<br><br>$num / $num";
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar