Ver Mensaje Individual
  #11 (permalink)  
Antiguo 07/09/2010, 00:08
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 2 meses
Puntos: 20
Respuesta: Cómo crear una encuesta/quiz inteligente con jquery

Cita:
Iniciado por tredio Ver Mensaje
debes modificar esta funcion, como te dije la variable se tiene que pasar por parametro, y no lo estas haciendo.
Pensaba que te referías a esta loadQuestion(respuestas), y como vi que ya se la pasabas por parámetro por eso no me di cuenta :D

Ya se la he agregado a la función que comentas, ahora sí que puedo recibir las variables. Le puse un & para poder recibir dos variables
preguntas.php?q=2&r=1,2,3

http://neodani.com/fdw/jquery/quiz

También implementé que según la respuesta hiciese una pregunta u otra.
Sin embargo me surgen 2 dudas:

La primera es como incorporar un boton con la función de volver a la pregunta anterior, marcando la pregunta que el usuario respondió.

La segunda, también relacionada es como ir almacenando las respuestas, mejor usar una variable de sesión no? Ya que utilizar el campo hidden no es muy correcto si el usuario a recargado la página, porque no se limpia...

Adjunto el fichero preguntas.php

Código PHP:
Ver original
  1. <?php
  2. //EN EL ID DE CADA dl COLOCAMOS q- SEGUIDO POR EL NUMERO DE LA PREGUNTA, ESTO ES PARA SABER EN QUE PREGUNTA VAMOS
  3. //CADA RESPUESTA SERA ALGO PARECIDO, TENDRA UN ID r- SEGUIDO POR EL NUMERO DE LA RESPUESTA
  4. //LA CLASE QUE TIENE EL dl, SERA PARA INDICAR CUANTAS PREGUNTAS DEBEN SER SELECCIONADAS ANTES DE CONTINUAR
  5.  
  6. $num_pregunta=$_REQUEST['q']; // Recoge el número de la pregunta
  7. $mis_respuestas=array(); // Array donde se van guardando todas las respuestas que contesta el usuario
  8.  
  9. $mis_respuestas[$num_pregunta]=$_REQUEST['r'];
  10.  
  11. if ($_GET['q']==1){?>
  12. <dl id="q-1" class="n[3]">
  13.     <dt>Pregunta <?php echo $num_pregunta ?> : <b>Selecciona 3 colores:</b></dt>
  14.     <dd id="r-1">Rojo</dd>
  15.     <dd id="r-2">Verde</dd>
  16.     <dd id="r-3">Azul</dd>
  17.     <dd id="r-4">Amarillo</dd>
  18.     <dd id="r-5">Negro</dd>
  19.     <dd id="r-6">Naranja</dd>
  20. </dl>
  21.  
  22. <?php }elseif($_GET['q']==2) {?>
  23. <dl id="q-2" class="n[1]">
  24.     <dt>Pregunta <?php echo $num_pregunta ?> : <b>¿Qué lenguaje de programacion te gusta mas?</b></dt>
  25.     <dd id="r-1">JAVA</dd>
  26.     <dd id="r-2">PHP</dd>
  27.     <dd id="r-3">ASP</dd>
  28.     <dd id="r-4">C</dd>
  29. </dl>
  30. <p>DEBUG: Respuestas de la pregunta <? echo ($num_pregunta-1).' : '.$mis_respuestas[$num_pregunta]?></p>
  31.  
  32. <?php
  33. // En funcion de las respuestas anteriores se formula la siguiente pregunta...
  34. }elseif(($_GET['q']==3)&&(($_GET['r']==1)||($_GET['r']==2))) {?>
  35. <dl id="q-3" class="n[1]">
  36.     <dt>Pregunta <?php echo $num_pregunta ?> : <b>Relacionada con PHP y JAVA </b></dt>
  37.     <dd id="r-1">respuesta 1</dd>
  38.     <dd id="r-2">respuesta 2</dd>
  39.     <dd id="r-3">respuesta 3</dd>
  40.     <dd id="r-4">respuesta 4</dd>
  41. </dl>
  42. <p>DEBUG: Respuestas de la pregunta <? echo ($num_pregunta-1).' : '.$mis_respuestas[$num_pregunta]?></p>
  43.  
  44. <?php }elseif(($_GET['q']==3)&&(($_GET['r']==3)||($_GET['r']==4))) {?>
  45. <dl id="q-3" class="n[1]">
  46.     <dt>Pregunta <?php echo $num_pregunta ?> : <b>Relacionada con ASP y C >> </b></dt>
  47.     <dd id="r-1">respuesta 1</dd>
  48.     <dd id="r-2">respuesta 2</dd>
  49.     <dd id="r-3">respuesta 3</dd>
  50.     <dd id="r-4">respuesta 4</dd>
  51. </dl>
  52. <p>DEBUG: Respuestas de la pregunta <? echo ($num_pregunta-1).' : '.$mis_respuestas[$num_pregunta]?></p>
  53.  
  54. <?php }elseif($_GET['q']==4) {?>
  55. <dl id="q-4" class="n[1]">
  56.     <dt>Pregunta <?php echo $num_pregunta ?> : <b>¿Cuál es tu edad?</b></dt>
  57.     <dd id="r-1">menos de 18</dd>
  58.     <dd id="r-2">18-25</dd>
  59.     <dd id="r-3">26-40</dd>
  60.     <dd id="r-4">mas de 40</dd>
  61. </dl>
  62. <p>DEBUG: Respuestas de la pregunta <? echo ($num_pregunta-1).' : '.$mis_respuestas[$num_pregunta]?></p>
  63. <?php }?>


Muchas gracias de antemano