Foros del Web » Programando para Internet » PHP »

Consulta a base de datos "paginadas"

Estas en el tema de Consulta a base de datos "paginadas" en el foro de PHP en Foros del Web. Hola: Necesito un poco de ayuda: Quiero hacer una consulta a una base de datos, pero que los resultados los "limite" a un numero determinado, ...
  #1 (permalink)  
Antiguo 21/03/2011, 12:56
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Consulta a base de datos "paginadas"

Hola:

Necesito un poco de ayuda:

Quiero hacer una consulta a una base de datos, pero que los resultados los "limite" a un numero determinado, a partir del cual lo vaya mostrando en paginas sucesivas.

un saludo
  #2 (permalink)  
Antiguo 21/03/2011, 13:06
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 4 meses
Puntos: 19
Respuesta: Consulta a base de datos "paginadas"

Te dejo un link que lo tiene perfectamente explicado.

http://www.desarrolloweb.com/articulos/1035.php

Saludos.
__________________
"No entiendes algo al menos que seas capaz de explicarselo a tu abuela.
Cada dia sabemos mas....y entendemos menos...."

A. Einstein - Genio mas alla de la razon.
  #3 (permalink)  
Antiguo 21/03/2011, 13:29
Avatar de humbero12  
Fecha de Ingreso: abril-2009
Ubicación: Cereté, Colombia
Mensajes: 53
Antigüedad: 15 años
Puntos: 4
Respuesta: Consulta a base de datos "paginadas"

Es facil aqui un ejemplo sencillo

Código PHP:
<?
$pag 
= isset($_REQUEST['pag'])?$_REQUEST['pag']:0//pagina seleccionada, si no se envia un parametro pag la pagina sera 0
$max =20//maximo 20 registros por pagina
$cons mysql_query("SELECT nombre,email,fecha FROM usuarios");
$numpag =ceil(mysql_num_rows($cons)/$max); // numero de paginas
$cons mysql_query("SELECT nombre,email,fecha FROM usuarios LIMIT ".($pag*$max).",".$max);

echo 
'<table cellpadding="4" border="1">
<tr>
<th>nombre<th>
<th>email</th>
<th>fecha</th>
</tr>'
;
while(
$row=mysql_fetch_array($cons)){
echo 
'<tr>
<td>'
.$row['nombre'].'<td>
<td>'
.$row['email'].'</td>
<td>'
.$row['fecha'].'</td>
</tr>'
;
}
echo 
'</table><br /><br />';

for(
$i=0;$i<$numpag;$i++){
echo 
'<a href="?pag='.$i.'">'.($i+1).'</a>, ';
}

?>
algun error reportalo, o alguna otra duda preguntala aqui estamos para ayudar.

suerte pues.

__________________
Sigueme en twitter @humbero12
Blog #cazacontenidos
  #4 (permalink)  
Antiguo 22/03/2011, 13:35
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Consulta a base de datos "paginadas"

hola:

He seguido tu sencillo ejemplo y funciona.

Lo he personalizado a mis necesidades y me ha surguido un problema:

Quiero añadir este form:

<form name="votos" method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
<input type="hidden" name="id" value="">
<input type="radio" name="voto" value="1">1
<input type="radio" name="voto" value="2">2
<input type="radio" name="voto" value="3">3
<input type="radio" name="voto" value="4">4
<input type="radio" name="voto" value="5">5
<input type="submit" name="send" style="margin-top:10px; color:#FFFFFF; border:1px solid #000000; width:70px; height:20px;font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px; padding-left:2px; padding-right:2px; padding-top:0px; padding-bottom:2px; line-height:14px; background-color:#FF0080; "value="Votar">

Sirve para votar cada consulta que genera la base de datos.



Posteriormentecon este codigo:
<span class="Estilo2"> <?php if( $row[media]==0){ echo "Sin votos aun, se el primero"; } else{ echo $rowComen["media"]; } ?></span>

Da el resultado,

Me podriais echar una mano a encagarlo?

Un saludo

</form>
  #5 (permalink)  
Antiguo 23/03/2011, 21:47
Avatar de humbero12  
Fecha de Ingreso: abril-2009
Ubicación: Cereté, Colombia
Mensajes: 53
Antigüedad: 15 años
Puntos: 4
Respuesta: Consulta a base de datos "paginadas"

Hola miriamgomez:
explicame bien lo que necesitas hacer y quisiera saber la estructura de las tablas de la base de datos pa evitar confusiones ok.
__________________
Sigueme en twitter @humbero12
Blog #cazacontenidos

Etiquetas: Ninguno
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 11:14.