Foros del Web » Programando para Internet » PHP »

Presentar de 5 en 5

Estas en el tema de Presentar de 5 en 5 en el foro de PHP en Foros del Web. Que tal, estoy desarrollando una encuesta, en esta el administrador determina las n preguntas que decida, una vez que las almaceno en la base de ...
  #1 (permalink)  
Antiguo 09/09/2007, 12:00
Avatar de chernobyl  
Fecha de Ingreso: abril-2006
Mensajes: 44
Antigüedad: 18 años
Puntos: 0
Presentar de 5 en 5

Que tal, estoy desarrollando una encuesta, en esta el administrador determina las n preguntas que decida, una vez que las almaceno en la base de datos pone a disposicion de los usuarios la encuesta, pero necesito que al momento de presentar las preguntas con sus respectivas respuestas vayan saliendo en bloques de 5, es decir, si son 20 preguntas en total en un pagina solo se presenten 5 y se de click en un boton siguiente para cargar las otras 5 y asi hasta que terminen las 20.
Como puedo hacer que se presenten de esta manera??

Gracias por su ayuda.
__________________
"Lo imposible son solo sueños que se llevan en la mente esperando volverese realidad, algunos llegan a serlo y los demas solo siguen siendo eso, sueños...."
  #2 (permalink)  
Antiguo 09/09/2007, 13:01
 
Fecha de Ingreso: febrero-2007
Mensajes: 58
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Presentar de 5 en 5

Esto iria al inicio de tu codigo antes del <Head> antes que todo o casi todo te diria

$registros = 5; // Cantidad de preguntas por paginas
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}else {
$inicio = ($_GET['pagina']-1) * $registros;
}
Lo que se realiza aqui es simplemente calcular el $inicio es para saber hasta donde llegara tu consulta.
<Body>
<?php
$Id= esto si tienes muchas encuentras en la misma tabla debes conseguir el
IdEncuesta (Quizas tengas que haces otra consulta para obtenerlo)
$resultados = mysql_query("SELECT idEncuesta FROM TablaEncuestas
WHERE IdEncuesta = $Id");
$total_registros = mysql_num_rows($resultados);
// Con esto se obtendian las cantidad de registro que nos sirven
$total_paginas = ceil($total_registros / $registros); // Calcula cantidad de PAG
$resultados = mysql_query("SELECT * FROM TablaEncuntas LIMIT $inicio, $registros");
// Con $inicio y $registro obtenemos solo la cantidad que vamos a mostrar por pagina.


// Mostramos los datos
if($total_registros) {
while($mostar=mysql_fetch_array($resultados)) {
// Mostras los datos que estan en $mostrar
}
} else {
// Imprimis que no hay resultados para la consulta //
}
mysql_free_result($resultados);
// Aca abajo viene la parte de codigo de los link del que es lo que querias
// Quedarioa algo asi
< Anterior 1 2 3 Siguiente >

if($total_registros) {
// Si estamos en la pagina es mayor a 1 es decir estamos en la
// pagina dos como minimo mostrar el Link "< Anterior"
if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}
// Se muestran lo nro de las paginas Ej: (1,2,3)
for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i) {
echo "<b>".$pagina."</b> ";
} else {
echo "<a href='paginacion.php?pagina=$i'>$i</a> ";
}
}
// Si no esta en la ultima pagina muesta el Link "Siguiente >"
if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Sigui ente ></a>";
}
}
?>
</Body>

Algo asi seria acomodalo comoo mas te convenga los link que muestras el nro de pagina yo lo puse despues de mostrar las preguntas pero pueden ir Arriva es indistinto o Arriva y Abajo. Espero que te ayude, con este codigo te vas a orientar.
Saludos Nico
  #3 (permalink)  
Antiguo 09/09/2007, 13:41
Avatar de chernobyl  
Fecha de Ingreso: abril-2006
Mensajes: 44
Antigüedad: 18 años
Puntos: 0
Re: Presentar de 5 en 5

Muchas gracias por tu ayuda, solo que tengo una pregunta, en lugar de que aparezca al final
< Anterior 1 2 3 Siguiente >
podria poner un solo boton de siguiente para darle entrada a la siguiente parte de las preguntas??
Es decir que el paginado sea controlado por un boton??

Gracias.
__________________
"Lo imposible son solo sueños que se llevan en la mente esperando volverese realidad, algunos llegan a serlo y los demas solo siguen siendo eso, sueños...."
  #4 (permalink)  
Antiguo 10/09/2007, 22:09
Avatar de chernobyl  
Fecha de Ingreso: abril-2006
Mensajes: 44
Antigüedad: 18 años
Puntos: 0
Re: Presentar de 5 en 5

Una vez mas el problema es resuelto muchas gracias por toda su ayuda. Gracias Nico8287
__________________
"Lo imposible son solo sueños que se llevan en la mente esperando volverese realidad, algunos llegan a serlo y los demas solo siguen siendo eso, sueños...."
  #5 (permalink)  
Antiguo 10/09/2007, 22:26
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: Presentar de 5 en 5

Si quieres, pon lo que hiciste. Por si llegase a interesar a cualquier usuario que busque en el foro y dé con este topic, así que, si querés postea lo que hiciste con script...

Saludos.
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 21:32.