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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Temas
Páginas: [1]
1  Programación / PHP / Validar mas de un checkbox seleccionado en: 16 Mayo 2015, 02:35 am
Tengo un examen donde en una pregunta, pongo 5 checkbox donde el usuario tiene que elegir 2 respuestas, pues 2 respuestas de ahí son correctas. Estoy atorada cuando el usuario selecciona los 5 checkbox, lo cual debería de marcar que la calificación es 0, pues no es correcto seleccionar los 5 si solo pide 2.

Tengo esto en mi código
Código
  1. ¿Cuánto es 2+2?
  2. <input type="checkbox" name="r81" value=".5"/>
  3.       a) 4<br/>
  4.       <input type="checkbox" name="r82" value=".5"/>
  5.       b) cuatro<br />
  6.       <input type="checkbox" name="r83" value="0"/>
  7.       c) 6<br />
  8.       <input type="checkbox" name="r84" value="0"/>
  9.       d) 3<br/>
  10.        <input type="checkbox" name="r85" value="0"/>
  11.       e) ocho<br/>
  12.  
  13.  
  14.  
  15. if($_POST['r81']==".5" && $_POST['r82']==".5")
  16. {
  17. if(empty($_POST['r83'])==false && empty($_POST['r84'])==false && empty($_POST['r85'])==false)
  18. {
  19.  
  20.  
  21.  
  22. $res = $r1+$r2+$r3+$r4+$r5+$r6+$r7+$r9+$r10;
  23. $array = array($r1,$r2,$r3,$r4,$r5,$r6,$r7,$r9,$r10);
  24.  
  25. for($i=0; $i< count($array);$i++)
  26. {
  27. if($r1==0 || $r2==0 || $r3==0 || $r4==0 || $r5==0 || $r6==0 || $r7==0 || $r9==0 || $r10 == 0)
  28. {
  29. $error = $error +1;
  30. }
  31. }
  32.  
  33. $error1=1;
  34. $total = $res * 10;
  35. $erroresT = $error + $error1;
  36.  
  37. }
  38. else
  39. {
  40. //cuando fueron seleccionadas SOLO las casillas correctas
  41. $r82 = $_POST['r82'];
  42. $r81 = $_POST['r81'];
  43. $res = $r1+$r2+$r3+$r4+$r5+$r6+$r82+$r81+$r7+$r9+$r10;
  44. $array = array($r1,$r2,$r3,$r4,$r5,$r6,$r7,$r9,$r10);
  45.  
  46. for($i=0; $i< count($array);$i++)
  47. {
  48. if($r1==0 || $r2==0 || $r3==0 || $r4==0 || $r5==0 || $r6==0 || $r7==0 || $r9==0 || $r10 == 0)
  49. {
  50. $error = $error +1;
  51. }
  52. }
  53.  
  54.  
  55. $total = $res * 10;
  56. $erroresT = $error + $error1;
  57. echo "El resultado es: ".$total;
  58. echo "Total de errores: ".$erroresT;
  59. }
  60. }
  61.  
  62.  

El resultado de seleccionar la dos casillas correctas y las demas sin seleccionar me muestra lo siguiente:

El resultado es: 100 Total de errores: 0

Y el resultado de seleccionar las 5 casillas me muestra:

 El resultado es: 100 Total de errores: 0

El resultado esperado debería ser:
El resultado es: 90 Total de errores: 1


Las variables $r1 .... $r10 son de otras preguntas que si esta validando bien.
El problema son las variables $r81,$r82,$r83,$r84,$r85



Si alguien me pudiera ayudar estaría muy agradecida.

Saludos
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines