elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  De 10 en 10 en SQL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: De 10 en 10 en SQL  (Leído 1,737 veces)
dimitrix


Desconectado Desconectado

Mensajes: 4.847



Ver Perfil WWW
De 10 en 10 en SQL
« en: 19 Septiembre 2008, 09:31 am »

Pues bueno, mi última preguntita en SQL (cosa que ya he buscado en google XD)

Cuanto haces una consulta a la db y por ejemplo te sale 55 resultados, como podría hacer que me salieran 10 y luego un botón para pasar a los 10 siguientes.

Creo que en un principio se podría sacar sólo 10 con una función tipo:

$a = 1;
while (10 == $a);
$a++

Pero aunque funcionara bien puesto y todo eso, sólo me mostraría los 10 primeros ¿No?

Cómo podría hacer para ir de 10 en 10.

Un saludo.


En línea




Rentero
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.164


La paciencia es la madre de la ciencia.


Ver Perfil
Re: De 10 en 10 en SQL
« Respuesta #1 en: 19 Septiembre 2008, 12:03 pm »

Eso se llama paginación.

Se hace usando LIMIT en SQL, pondré un ejemplo básico pero encontrarás más cosas sabiendo como como se llama :P
Código
  1. <?php
  2. $catidad = 10; //numero de resultados por página
  3. $pag = intval($_GET['pag']); //casting a int
  4.  
  5. $desde = $pag * $cantidad;
  6. //ordenamos por id, de forma ascenedente
  7. $resp = mysql_query("SELECT * FROM noticias ORDER BY id DESC LIMIT $desde, $cantidad");
  8. ?>

Si pagina.php?pag=0 => $pag = 0; $desde = 0; $cantidad= 10; => LIMIT 0, 10
Si pagina.php?pag=1 => $pag = 1; $desde = (1 * 10) = 10; $cantidad = 10; => LIMIT 10, 10;

Es decir, que tienes que comprobar:
* Que la $_GET['pag'] es un número.
* Tienes que comprobar el numero de entradas que hay para no intentar listar más de las que son ($num_paginas = $num_total_entradas / $cantidad)

Pff ahora mismo no tengo la cabeza como para pensar más xD pero creo que como intrducción sirve ;)

http://www.desarrolloweb.com/articulos/1035.php
http://www.elguruprogramador.com.ar/articulos/paginacion-en-php.htm
http://www.webexperto.com/articulos/art/74/paginacion-de-resultados-con-php/

En el foro tb hay pero ahora no los encuentro :S


« Última modificación: 19 Septiembre 2008, 12:15 pm por Rentero » En línea

Firmado.
dimitrix


Desconectado Desconectado

Mensajes: 4.847



Ver Perfil WWW
Re: De 10 en 10 en SQL
« Respuesta #2 en: 19 Septiembre 2008, 14:42 pm »

Genial, muchas gracias por todo, ya sigo yo XDD
En línea




Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines