Foros del Web » Programando para Internet » PHP »

Como capturar las respuestas correctas o incorrectas de un TEST Online.

Estas en el tema de Como capturar las respuestas correctas o incorrectas de un TEST Online. en el foro de PHP en Foros del Web. Tengo este codigo para comparar las preguntas correctas con lo que se respondió. Las variable $correctas es global (la verdad es que no se si ...
  #1 (permalink)  
Antiguo 13/07/2013, 01:10
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta Como capturar las respuestas correctas o incorrectas de un TEST Online.

Tengo este codigo para comparar las preguntas correctas con lo que se respondió. Las variable $correctas es global (la verdad es que no se si esta bien eso), y la capturo en un ciclo while que esta anteriormente, el cual imprimia las respuestas de una pregunta X. Por otro lado, $idPregunta tambien es global, la cual es capturada en otro while el cual imprime las preguntas. Y por ultimo tambien tenemos la variable $r que cuenta la cantidad de preguntas que hay, que tambien es global.

Lo que intento hacer es capturar las buenas y malas de un test online, para luego capturar estos valores ($buenas y $malas) y poder sacar un puntaje por alumno.

Código PHP:
if ($_POST['altern'.$idPregunta]==$correctas){
                    for(
$buenas=0;$buenas<=$r;$buenas++)
                    {
                    echo 
$buenas;    
                        
                    }             
                    
                }else {
                    
                    for(
$malas=0;$malas<=$r;$malas++)
                    {
                        
                        echo 
$malas;
                    }
                }
                
                       
$sql2 "SELECT max_preg FROM pruebas WHERE id_pruebas ='".$_POST['pruebas_r']."'";
                        
$resultado2 $mysqli->query($sql2); 
                        while(
$fila=$resultado2->fetch_assoc()){
                        
$cant_preg $fila['max_preg'];
                        
$uno 1;
                        
$dos 2;
                        
$sql3 "SELECT ROUND (( ? - ? /4 ) * (SELECT 450 / max_preg AS 'Factor' 
                                FROM pruebas
                                WHERE id_pruebas =? )) AS 'Calculo Puntaje'"
;
                        
$puntaje $mysqli->prepare($sql3);
                        
$puntaje->bind_param('ii'$buenas$malas$_POST['pruebas_r']);
                        
$puntaje->bind_result($calculo);
                        
$puntaje->execute();
                        while (
$puntaje->fetch()){
                        echo 
$calculo;
                        }
                        } 
Espero me ayuden, se me hizo muy complicado todo esto.
  #2 (permalink)  
Antiguo 13/07/2013, 01:51
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Estoy trabajando en un módulo similar para un sitio y, aunque todavía me falta un poco para llegar a esta parte, tengo pensado marcar y contar las respuestas buenas y malas en cuanto se envían, guardando en una tabla cada respuesta con un marcador OK o !OK y, además, en otra tabla aparte, los resultados del test: secciones, preguntas, respuestas correctas, respuestas erróneas, etc.

Esto me permitirá consultar los resultados desde una sola tabla y tener siempre los cálculos a la mano.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 13/07/2013, 16:37
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

mmm, la verdad es que yo no sé como capturar los datos, especificamente las respuestas, ya que el atributo name de los radio button depende de la id de la pregunta. es decir, la forma que se me ocurrio a mi para capturar el valor de los radio button es asi
Código PHP:
 $_POST['altern'.$idPregunta
Lo he probado pero no da resultados.

Última edición por CHAEEZ; 13/07/2013 a las 18:49
  #4 (permalink)  
Antiguo 14/07/2013, 07:40
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Los radio-buttons en HTML debes declararlos como arrays

Cita:
<input type="radio" name="pregunta22[]" />
Ten en cuenta que el ID no viaja en el formulario hacia el servidor sino el NAME y el VALUE ... asi.. al momento de generar el formulario creas un NAME DISTINTO tipo array para CADA PREGUNTA
__________________
Salu2!
  #5 (permalink)  
Antiguo 14/07/2013, 16:08
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

hola, gracias por la respuesta. Yo ahora en vez de tomar la id de la pregunta, implemente el mismo contador de preguntas para diferenciar los radio button.

Código PHP:
if (isset($_POST['realizar'])){
            
$sql2 "SELECT max_preg FROM pruebas WHERE id_pruebas ='".$_POST['pruebas_r']."'";
            
$resultado2 $mysqli->query($sql2); 
            while(
$fila=$resultado2->fetch_assoc()){
            
$cant_preg $fila['max_preg'];
        for (
$r=0;$r<=$cant_preg;$r++){
            if (
$_POST['altern'.$r]==$correctas){
                    for(
$buenas=0;$buenas<=$cant_preg;$buenas++)
                    {
                    echo 
$buenas;    
                        
                    }             
                    
                }else {
                    
                    for(
$malas=0;$malas<=$cant_preg;$malas++)
                    {
                        
                        echo 
$malas;
                    }
                }
                } 
Cual seria la diferencia y que beneficio me trae que tenga esa nomenclatura.
P.D.: Este codigo no me arroja ningun resultado, que estare haciendo mal?
  #6 (permalink)  
Antiguo 14/07/2013, 16:32
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Por que no haces un var_dump($_POST) ? Te daras cuenta de como hacerlo viendo como llegan los datos.

PD: tambien podrias tener todos tus Radio(s) iguales... independientemente de la pregunta:

Cita:
<input type="radio" name="respuesta[]" />

Ahi la dificultad es que debes mapear cada "respuesta" con una pregunta en particular, pues tendras varias respuestas por pregunta.
__________________
Salu2!
  #7 (permalink)  
Antiguo 14/07/2013, 23:26
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

de hecho, has dado justo en el clavo a lo que no tengo idea de como!! =/ necesito capturar las buenas y las malas para la ecuacion pero primero debo capturar los resultados.
  #8 (permalink)  
Antiguo 15/07/2013, 00:12
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

PERDON !!!! estube confundiendo los CHECKBOXs con los RADIOs ...y pues el tratamiento es completamente diferente. Mira el ejemplo que te hice y he verificado funciona correctamente.

Código PHP:
Ver original
  1. <h1>Examen</h1>
  2.  
  3. <!-- Pido perdon... estaba pensando en CHECKBOXs donde son varios valores, por eso dije lo de los arrays en el <INPUT>  -->
  4.  
  5. <form method="POST" action='<?=$_SERVER['PHP_SELF']?>' >
  6.     Cual es la capital de Argentina ? <br/>
  7.     <input type="radio" name="pregunta0" value="Paris"/>Paris<br/>
  8.     <input type="radio" name="pregunta0" value="Caracas"/>Caracas<br/>
  9.     <input type="radio" name="pregunta0" value="Bogota"/>Bogota DC<br/>
  10.     <p/>
  11.     Que es la Metamorfosis  <br/>
  12.     <input type="radio" name="pregunta1"  value="cambio+forma"/>Cambio de forma<br/>
  13.     <input type="radio" name="pregunta1"  value="cometa"/>Un cometa<br/>    
  14.     <input type="submit" value="Enviar" />
  15. </form>
  16.  
  17.  
  18. <?php
  19. // esto estaria en otro archivo si programas bien
  20.  
  21. $cant_preguntas = 2;
  22. $rta = [];
  23.  
  24. for ($i=0;$i<$cant_preguntas;$i++){
  25.     $var = 'pregunta'.$i;
  26.     $rta[] = (isset($_POST[$var]) ? $_POST[$var] : null);    
  27. }
  28.  
  29. var_dump ($rta);

En la variable $rta tienes las respuestas a cada pregunta... es un ejemplo simple... pero tu puedes hacer mil cosas mas.....

Otra falla grave en mis dichos es que no puedes repetir el NAME entre preguntas como termine diciendo... puras babosadas, disculpa !!!

Creo que @Triby debe orientarte mejor
__________________
Salu2!
  #9 (permalink)  
Antiguo 15/07/2013, 01:11
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Bueno, lo que yo estoy planeando no es tan difícil, veamos, obtengo de la base de datos lo siguiente:

Código:
idpregunta
textopregunta
posibles-respuestas (de 3 a 5)
respuesta-correcta (1 a 5)
--- otros datos que no vienen al caso ---
ejemplo:
Código PHP:
Ver original
  1. $preguntas = array(
  2.      7 => array(  // 7 es el ID de la pregunta
  3.          'texto' => '¿Qué es la metamorfosis?',
  4.          'respuestas' => array(
  5.               1 => 'Cambio de forma',
  6.               2 => 'Un cometa',
  7.               3 => 'Una droga',
  8.          ),
  9.          'correcta' => 1
  10.      )
  11. );


Sigo trabajando en esto, pero el plan es incluir en el name del radio la id de cada pregunta, porque las voy a mostrar modificando el orden cada que se resuelva el test... no me sirve consecutivo, aunque podría ser, pero me complicaría más.

Luego, el valor del radio será el número de respuesta.

Código HTML:
Ver original
  1. <form method="POST" action='<?=$_SERVER['PHP_SELF']?>' >
  2.     Cual es la capital de Argentina ? <br/>
  3.     <input type="radio" name="pregunta1" value="1"/> Paris<br/>
  4.     <input type="radio" name="pregunta1" value="2"/> Caracas<br/>
  5.     <input type="radio" name="pregunta1" value="3"/> Bogota DC<br/>
  6.     <p/>
  7.     Que es la Metamorfosis  <br/>
  8.     <input type="radio" name="pregunta7"  value="1"/>Cambio de forma<br/>
  9.     <input type="radio" name="pregunta7"  value="2"/>Un cometa<br/>    
  10.     <input type="radio" name="pregunta7"  value="3"/>Una droga<br/>    
  11.     <input type="submit" value="Enviar" />
  12. </form>

Luego, cuando obtenga los resultados, recorro la lista de preguntas, buscando si existe "pregunta#", comparo con la respuesta correcta e incremento contador de buenas o malas, según el caso.
__________________
- León, Guanajuato
- GV-Foto
  #10 (permalink)  
Antiguo 15/07/2013, 06:52
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

@Triby: me gusto lo de que los value sean numericos.....

Ve directo al final que te dejo una idea aunque seguro lo resolveras mejor.

@CHAEEZ: el puntaje se puede calcular tienendo en cuenta valores para respuestas correctas, incorrectas y preguntas sin contestar:

Cita:
$valor_rta_ok = 1; // suma +1
$valor_rta_not_ok = 0; // no suma, podria restar
$valor_rta_null = 0; // no suma, podria restar algo
Preguntas (agrego una, corrijo otra)

Código HTML:
Ver original
  1. <form method="POST" action='<?=$_SERVER['PHP_SELF']?>' >
  2.     Cual es la capital de Argentina ? <br/>
  3.     <input type="radio" name="pregunta0" value="1"/>Paris<br/>
  4.     <input type="radio" name="pregunta0" value="2"/>Caracas<br/>
  5.     <input type="radio" name="pregunta0" value="3"/>Bogota DC<br/>
  6.     <input type="radio" name="pregunta0" value="4"/>Ninguna de las anteriores<br/>
  7.     <p/>
  8.     Que es la Metamorfosis  <br/>
  9.     <input type="radio" name="pregunta1"  value="1"/>Cambio de forma<br/>
  10.     <input type="radio" name="pregunta1"  value="2"/>Un cometa<br/>    
  11.     <input type="radio" name="pregunta1"  value="3"/>Una droga<br/>    
  12.     <input type="submit" value="Enviar" />
  13.     La cartografia del Gran descubrimiento (America) fue ...  <br/>    
  14.     <input type="radio" name="pregunta2"  value="1"/>Española<br/>    
  15.     <input type="radio" name="pregunta2"  value="2"/>Italiana<br/>
  16.     <p/>
  17.     <input type="submit" value="Enviar" />
  18. </form>

Programa:

Código PHP:
Ver original
  1. <?php
  2. // Configuracion:
  3. $valor_rta_ok = 1;
  4. $valor_rta_not_ok = 0;
  5. $valor_rta_null = 0;
  6.  
  7. // respuestas correctas
  8. $correctas = array(4,1,2);
  9.  
  10. $cant_preguntas = count($correctas);
  11. $rtas = array();
  12. $coincidencias = array();
  13.  
  14.  
  15. for ($i=0;$i<$cant_preguntas;$i++){
  16.     $var = 'pregunta'.$i;
  17.     $rtas[] = (isset($_POST[$var]) ? $_POST[$var] : null);    
  18. }
  19.  
  20. // Calculo puntaje
  21. $cant_correctas = 0;
  22. $cant_nulas = 0;
  23.  
  24. foreach ($rtas as $pos=>$rta)
  25. {  
  26.     if ($rta ==null)
  27.         $cant_nulas++;
  28.     else
  29.         $cant_correctas += ($rta == $correctas[$pos]);    
  30. }  
  31.  
  32. $cant_incorrectas = $cant_preguntas - $cant_correctas ;
  33.  
  34. if ($cant_nulas != $cant_preguntas)
  35. {
  36.     $puntaje = ($valor_rta_ok*$cant_correctas) + ($valor_rta_not_ok*$cant_incorrectas) + ($valor_rta_null*$cant_nulas);
  37.     echo "<p/><b>Puntaje: $puntaje";
  38. }


Cita:
Sigo trabajando en esto, pero el plan es incluir en el name del radio la id de cada pregunta, porque las voy a mostrar modificando el orden cada que se resuelva el test... no me sirve consecutivo, aunque podría ser, pero me complicaría más.
Una forma de alterar el orden y que sea dificil / imposible pillar si esa respuesta estubo en otro examen seria generar VALUEs y NAMEs ambos numericos grandes ó alfanumericos complicados como los unique_id() de PHP, luego al momento de leer $_POST o $_GET se buscan esos NAMEs alfanumericos ('AF34534jh34g37447535542') en vez de los tipicos "pregunta23" y... para validar las respuestas en vez de comparar con VALUE="3" lo haces contra VALUE="jj5jj54j554j45j45UUkio" ... lo cual complica un poco la lectura....

Adicional, yo guardaria esos identificadores para respuestas (name y value) en una tabla de "test_generados" y asi los puedo cambiar por cada test realizado !

Podrias guardar el "numero de alumno", "documento" o "IP" en esa tablita de generados (o el ID de la tabla usuarios si son usuarios registrados) ... asi evitas tambien que generen otro test y vuelvan a probar suerte ;)
__________________
Salu2!

Última edición por Italico76; 15/07/2013 a las 08:11
  #11 (permalink)  
Antiguo 15/07/2013, 19:43
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

ustedes opinan que dejarlo con un valor entero es la mejor solucion?. tengo otro problema con la solucion qu eme diste, las correctas las tengo almacenadas en base datos, como traspaso las respuestas de cada pregunta a un arreglo?
Mi idea inicial era comparar la respuesta que escogio un alumno, por ejemplo la A, con la alternativa correcta que esta almacenada en la base datos en la tabla respuestas, que por ejemplo podria ser la C. Si estas no son iguales, suma una incorrecta, si son iguales, suma una correcta. y asi sucesivamente. Esto no se como podria ser. :c pero para mi era la mejor solucion para evitar temas de usar trampas. como lo es ver codigo fuente.

Pero si les parece que la mejor solucion es dejarlo con numeros enteros, cambio de parecer, la verdad es que estoy algo atrasado en este proyecto =/, de todas maneras me gustaria trabajar todo con base datos y no con variables predeterminadas.
  #12 (permalink)  
Antiguo 15/07/2013, 19:49
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Yo voy a usar número en las respuestas porque así las tengo guardadas en tabla y es mucho mejor que poner todo el texto de la respuesta. Si quieres hacerlo con letras también está bien, lo único que necesitas es poder reconocer la correcta.

Cómo pasas las respuestas a un arreglo?

Lógicamente necesitas tener todas las preguntas y respuesta a la mano para poder mostrarlas. Entonces, haces las consultas y las recorres armando el/los arreglos.

Yo tengo tanto preguntas como respuestas en una misma tabla... sí, lo sé, es mala práctica, pero también estoy con el tiempo encima.

Muestra cómo haces tus consultas para obtener preguntas y respuestas para tratar de ayudarte con eso.
__________________
- León, Guanajuato
- GV-Foto
  #13 (permalink)  
Antiguo 15/07/2013, 20:51
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Este codigo utilizo para mostrar las preguntas..

Código PHP:
               <?
                            
                            
                                             $r
=0;
            
$consulta "SELECT a.id_pruebas, b.descrip_preg, d.descrip_nivel, d.puntajes, e.nombre_habil, b.id_preguntas
                         FROM pruebas a
                         INNER JOIN preguntas b ON a.id_pruebas = b.id_pruebas
                         INNER JOIN niveles d ON b.id_niveles = d.id_niveles
                         INNER JOIN habilidad e ON b.id_habil = e.id_habil
                         WHERE a.id_curso = '"
.$_POST['id_curso']."' and b.id_pruebas='".$_POST['pruebas_r']."' ORDER BY b.id_preguntas ASC ";
                        
$result $mysqli->query($consulta);
                            
                
?>                                   
                <div class="art-postcontent art-postcontent-0 clearfix" ><p>
                <form method="POST"  action="resultados.php">
    <?        
    
while($row $result->fetch_assoc()) {?> <p>  <hr class="arr_aba">  <ul>
    <?
            
echo "<strong>".($r=$r+1).". ".$row['descrip_preg']."</strong> <br><br>";
            echo 
"<input type='hidden' style='display: none;' name='puntaje_niv'  value='".$row['puntajes']."' /> ";
            echo 
"<input type='hidden' style='display: none;' name='habilidad' value='".$row['nombre_habil']."'/>";
            
// imprimes tu $row
  
            // segundo query
         
            
$idPregunta $row['id_preguntas'];
   
 
$query "SELECT DISTINCT b.id_preguntas, f.id_respuestas, f.descrip_resp, f.letra_resp, f.correctas
FROM pruebas a
INNER JOIN preguntas b ON a.id_pruebas = b.id_pruebas
INNER JOIN respuestas f ON b.id_preguntas = f.id_preguntas
                           WHERE a.id_curso = ? and b.id_pruebas=? AND  b.id_preguntas=? ORDER BY f.id_respuestas ASC "
;
    
$respuestas $mysqli->prepare($query);
    
$respuestas->bind_param('iii'$_POST['id_curso'] ,$_POST['pruebas_r'], $idPregunta);
    
$respuestas->bind_result($id_preg$id_resp$descrip_resp$letra_resp$correctas);
            
$respuestas->execute();
                     
                    
            while(
$respuestas->fetch()) {

                echo 
$letra_resp.") <input name=altern".($r)." value=".$letra_resp." type='radio'> ".$descrip_resp."<br>"
                
                         
// Imprimes las respuestas...
            
}?>
              </ul>  </p>
                        
                                      <?  }   ?>


Resultado :


1.- En PHP, para obtener el tamaño de un fichero se emplea la función

a)[radiobutton1] file()

b)[radiobutton1] filesize()

c)[radiobutton1] fsize()

d)[radiobutton1] f_size()

e)[radiobutton1] f_sizes()




2.- En PHP, ¿se invoca automáticamente el constructor de la clase base en la clase heredada?

a)[radiobutton2] Sí, siempre

b)[radiobutton2] Sí, si la herencia es pública

c)[radiobutton2] Sí, si la herencia es directa

d)[radiobutton2] No, nunca

e)[radiobutton2] No, pero puede ser indefinidamente.

Última edición por CHAEEZ; 15/07/2013 a las 21:00
  #14 (permalink)  
Antiguo 15/07/2013, 21:18
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

@CHAEEZ: no deberias mezclar HTML con consultas a la DB y demas...... si estuviera todo separado yo que no veo bien te podria ayudar mas :)
__________________
Salu2!
  #15 (permalink)  
Antiguo 15/07/2013, 21:47
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

a que te refieres con mezclar html con consultas?? los $_POST? necesito hacerlo asi ya que los alumnos tienen un combobox anteriormente en donde escogen la prueba a realizar. =/
  #16 (permalink)  
Antiguo 16/07/2013, 06:05
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Cita:
Iniciado por CHAEEZ Ver Mensaje
a que te refieres con mezclar html con consultas?? los $_POST? necesito hacerlo asi ya que los alumnos tienen un combobox anteriormente en donde escogen la prueba a realizar. =/
Esta parte lo resume todo..... es parte de una Vista o de un Modelo ? o de que ...

Código PHP:
<?        
    
while($row $result->fetch_assoc()) {?> <p>  <hr class="arr_aba">  <ul>
<?
Se que puede sonar "arrogante" pero no lo es de verdad ... hace pocos años que no hago la misma cosa..... es que uno se acostumbra a la "claridad" y máxime cuando tienes mucha dificultad para ver en una pantalla como me pasa a mi.

Creo no es mala la idea es que de paso que resuelvas este proyecto, aprendas Modelo-Vista-Controlador (MVC)
__________________
Salu2!
  #17 (permalink)  
Antiguo 16/07/2013, 16:09
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

1- Lee la info del test y consérvala
2- Lee las preguntas con sus opciones y cárgalas en un array
3- Verifica si se va a procesar el formulario
3.1- Si se está procesando el formulario, ya tienes las preguntas y opciones a la mano para recorrerlas y saber cual tiene una respuesta correcta y cual no.
3.2- Actualiza los resultados del test
4- Si no se está procesando el formulario entonces lo muestras para que el usuario conteste el test, ya tienes todo lo que necesitas en variables y/o arrays

Lógicamente, no habrá segunda oportunidad para que el usuario corrija algún error u omisión, si contestó bien, si no, se guarda así en los resultados.
__________________
- León, Guanajuato
- GV-Foto
  #18 (permalink)  
Antiguo 16/07/2013, 16:47
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

Cita:
Iniciado por Triby Ver Mensaje
Lógicamente, no habrá segunda oportunidad para que el usuario corrija algún error u omisión, si contestó bien, si no, se guarda así en los resultados.
De acuerdo... por eso tambien decia mas arriba que debe guardarse algo que identifique univocamente al usuario:

a) IP si es por Internet que se hace el Test
b) El numero de documento, librera estudiantil...etc si es en una LAN
__________________
Salu2!
  #19 (permalink)  
Antiguo 27/07/2013, 05:24
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Como capturar las respuestas correctas o incorrectas de un TEST Online.

que pena que nadie me haya podido ayudar, tengo plazo hasta el lunes, no he podido llegar a la solucion de esto. Hasta el momento las respuestas han sido de modificar el codigo completo.
@Italico76,

Código PHP:
  <?        
    
while($row $result->fetch_assoc()) {?> <p>  <hr class="arr_aba">  <ul>
<?
El codigo html que esta ahi es simplemente visual, no deberia afectar en nada.
Me sirve para dejar las preguntas mas ordenadas, eso es todo.
Corrigeme si me equivoco.

Esperaba que @GatorV me pudiera ayudar en esto, ya que el me ayudo a mostrar las preguntas de una determinada respuesta.

Etiquetas: diseño, examen, formulario, mysql, php+bd+mysql, test
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:36.