PHP - ENVIAR RESPUESTAS A OTRA PAGINA USANDO CHECKBOX

   
Vista:

ENVIAR RESPUESTAS A OTRA PAGINA USANDO CHECKBOX

Publicado por tony (1 intervención) el 14/05/2014 09:08:23
HOLA BUENAS NOCHES, SOY NUEVO EN ESTO DE PHP Y NECESITO AYUDA EN UN DETALLITO...
COMO PROYECTO FINAL ME DEJARON HACER UN CUESTIONARIO DE 5 PREGUNTAS, DONDE CADA PREGUNTA VA TENER 3 INCISOS UTILIZANDO UN CHECKBOX... AL MOMENTO DE SELECCIONAR LOS 5 INCISOS Y DAR CLICK EN EL BOTON ACEPTAR DE MI PAGINA LLAMADA "cuestionario.php" DEBE MANDARME A OTRA PAGINA LLAMADA "respuestas.php".

EN "cuestionario.php" TODO FUNCIONA MUY BIEN, PERO AL MANDARME A "respuestas.php" VIENE UN PROBLEMA, LA PAGINA ME ARROJA EL CODIGO Y NO LAS RESPUESTAS.

A CONTINUACION LES DEJO EL CODIGO QUE TENGO EN AMBAS PAGINAS...

cuestionario.php :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
<head>
<title> Cuestionario </title>
</head>
<body>
<h1> CUESTIONARIO</h1>
 
<h3>RESPONDA LAS PREGUNTAS CORRECTAMENTE </h3>
<form method = "post" action = "respuestas.php">
QUIEN DIO EL GRITO DE DOLORES?
<input type="checkbox" name="resp1" value="cor">Miguel Hidalgo<br>
<input type="checkbox" name="resp2" value="inc">Vicente Fernandez<br>
<input type="checkbox" name="resp3" value="inc">Bruno Mars<br>
 
QUIEN DESCUBRIO AMERICA?
<input type="checkbox" name="resp4" value="inc">Michael Jackson<br>
<input type="checkbox" name="resp5" value="inc">Chavelo<br>
<input type="checkbox" name="resp6" value="cor">Cristobal Colon<br>
 
QUIEN ES EL MEJOR MAESTRO DE LA UNIVERSIDAD KINO?
<input type="checkbox" name="resp7" value="inc">Harry Potter<br>
<input type="checkbox" name="resp8" value="cor">Alvaro Valenzuela<br>
<input type="checkbox" name="resp9" value="inc">La Picos<br>
 
QUIEN ES EL PRESIDENTE ACTUAL DE LA REPUBLICA MEXICANA?
<input type="checkbox" name="resp10" value="cor">Enrique P. Nieto<br>
<input type="checkbox" name="resp11" value="inc">Vicente Fox<br>
<input type="checkbox" name="resp12" value="inc">Bart Simpson<br>
 
QUIEN ES EL PRESIDENTE ACTUAL DE LOS ESTADOS UNIDOS?
<input type="checkbox" name="resp13" value="inc">George W. Bush<br>
<input type="checkbox" name="resp14" value="inc">Justin Bieber<br>
<input type="checkbox" name="resp15" value="cor">Barack Obama<br>
 
 
</label><br/>
<input type="submit"  name= "aceptar" value="ACEPTAR"/>
</form>
</body>
</html>
</body>
</html>


respuestas.php:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<html>
<head>
<title> RESULTADO </title>
</head>
<body>
<h3>Tu Resultado: </h3>
<?php
$valor1 = $_GET["resp1"];
$valor2 = $_GET["resp6"];
$valor3 = $_GET["resp8"];
$valor4 = $_GET["resp10"];
$valor5 = $_GET["resp15"];
 
if ($aceptar == "ACEPTAR" ){
 
if($resp1.selected){echo "<B> PREGUNTA 1 CORRECTA, TIENES 20 PUNTOS</B>", $valor1==20;}
else{echo "<B> PREGUNTA 1 INCORRECTA, NO TIENES PUNTOS</B>", $valor1 == 0;};
 
if($resp6.selected){echo "<B> PREGUNTA 2 CORRECTA, TIENES 20 PUNTOS</B>",$valor1==20;}
else{echo "<B> PREGUNTA 2 INCORRECTA, NO TIENES PUNTOS</B>",$valor2==0;};
 
if($resp8.selected){echo "<B> PREGUNTA 3 CORRECTA, TIENES 20 PUNTOS</B>", $valor3==20;}
else{echo "<B> PREGUNTA 3 INCORRECTA, NO TIENES PUNTOS</B>",$valor3==0;};
 
if($resp10.selected){echo "<B> PREGUNTA 4 CORRECTA, TIENES 20 PUNTOS</B>",$valor4==20;}
else{echo "<B> PREGUNTA 4 INCORRECTA, NO TIENES PUNTOS</B>", $valor4==0;};
 
if($resp15.selected){echo "<B> PREGUNTA 5 CORRECTA, TIENES 20 PUNTOS</B>", $valor5==20;}
else{echo "<B> PREGUNTA 5 INCORRECTA, NO TIENES PUNTOS</B>", $valor5==0;};
 
$resultado = $valor1+$valor2+$valor3+$valor4+$valor5;
print "<h3>tu calificacion es: $resultado !</h3>";
 
};
?>
</body>
</html>


NO SE SI ESTO ES CORRECTO PERO DE ESTA MANERA ES COMO ENCONTRE EJEMPLOS EN INTERNET... CUALQUIER AYUDA SERIA MUY UTIL...

DE NUEVO BUENAS NOCHES Y GRACIAS DE ANTEMANO

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

ENVIAR RESPUESTAS A OTRA PAGINA USANDO CHECKBOX

Publicado por xve (5515 intervenciones) el 14/05/2014 10:59:41
Hola Tony, es como si tu servidor no cogiera el codigo PHP... tienes instalado el php?? que servidor web utilizas?

Si creas un archivo que contenga:
1
2
3
<?php
phpinfo();
?>
y lo ejecutas, que te dice?


De todas maneras, a simple vista, veo un error...
if($resp1.selected) no es correcto... ya que el valor que recibiras es "on" si esta seleccionado, tendría que ser:if($resp1=="on")


Si nos puedes comentar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

ENVIAR RESPUESTAS A OTRA PAGINA USANDO CHECKBOX

Publicado por Mauricio (3 intervenciones) el 15/05/2014 12:11:10
Hola Tony,
en primer lugar yo usaría un grupo de botones de opción, ya que permiten una única respuesta
Así me quedaría una parte del archivo cuestionario.php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
  <head>
  	<title> Cuestionario </title>
  </head>
<body>
<h1> CUESTIONARIO</h1>
<h3>RESPONDA LAS PREGUNTAS CORRECTAMENTE </h3>
        <form method = "post" action = "respuestas.php">
       		QUIEN DIO EL GRITO DE DOLORES?<br>
                <input type="radio" name="resp1" value="0">Miguel Hidalgo<br>
                <input type="radio" name="resp1" value="1">Vicente Fernandez<br>
                <input type="radio" name="resp1" value="2">Bruno Mars<br>
 
                <input type="submit" name= "aceptar" value="ACEPTAR"/>
       </form>
</body>
</html>

En respuestas.php veo varios errores:
$valor1 = $_GET["resp1"]; utilizas el metodo Get para recoger los datos, pero el formulario utiliza el metodo Post
$valor1==20 esto se utiliza para comparar, para asignarle valor a una variable sería $valor1=20;
echo "<B> PREGUNTA 1 CORRECTA, TIENES 20 PUNTOS</B>",(AQUI SEPARAS LA SENTENCIA CON , y deberia ser ;) $valor1==20;
Te dejo como me quedaría parte de respuestas.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<html>
    <head>
    	<title> RESULTADO </title>
    </head>
    <body>
    	<h3>Tu Resultado: </h3>
		<?php
			if ($_POST['aceptar'])
			{
				$valor1 = $_POST["resp1"];
 
			 	if($valor1==0)
				{
					echo "<B> PREGUNTA 1 CORRECTA, TIENES 20 PUNTOS</B>";
					$valor1=20;
				}
				else
				{
					echo "<B> PREGUNTA 1 INCORRECTA, NO TIENES PUNTOS</B>";
					$valor1 = 0;
				}
 
				$resultado = $valor1;//+$valor2+$valor3+$valor4+$valor5; 
				print "<h3>tu calificacion es: ". $resultado. " !</h3>";
			}
		?>
    </body>
</html>

Espero que te sea de utilidad
Saludos y que sigan los éxitos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar