¿Cómo hacer "una trivia" de 3 preguntas en PHP?

Necesito hacer una especie de prueba/examen, en el cual realice una pregunta donde responda en dos botones y/o en un checkbox (verdadero o falso según corresponda), si responde de forma correcta me abra otra pregunta, y que genere lo mismo (otra pregunta de verdadero o falso), y así sucesivamente en un rango de 3(tres) preguntas, si no responde bien, que automáticamente aparezca un "error", como puedo hacer esto.

1 respuesta

Respuesta
1

Es sencillo, lo mejor sería tener una base de datos de preguntas, con el numero de pregunta, opciones, y respuesta correcta... por ejemplo:

"1","¿cual es la capital de francia","londres","parís","madrid","B"

Esto significa que tienes tres opciones, y que la opción correcta es la B, parís.

Una vez con esto ya tienes todo lo que necesitas, con PHP, primero compruebas en que pregunta estas, la 1 si es la primera vez, buscar en la base de datos la información... y luego creas el formulario que necesites.

Cuando pulsen la opción, compruebas en la base de datos si es la correcta, y pasas a la siguiente o mandes el error. Así lo haría yo.

gracias por responder, tengo este código y me funciona en un 70% (creo yo), el problema es que cuando responde mal la segunda y/o la tercera no se reinicia y eso también lo necesito, esto es lo que tengo:

<html>
<head> <title> Problema </title>
</head>
<body background="img/CC3.jpg">
<font color="#FF0000">
<center><h1> Problema </h1> <br></center>
<form action="1.php" method="post">
Responda Si o No según corresponda
<br>
¿Pregunta 1?
<br>
<input type="checkbox" name="check1">SI
<br>
<input type="checkbox" name="check2">No
<br>
<input type="submit" name="submit1" value="Verificar">
<br>
<?php
if (isset($_REQUEST['check1']))
{
$SI=$_REQUEST['check1'];
echo "La Respuesta es Correcta";
{
echo "<br>¿Pregunta 2?";
echo '
<br>
<input type="checkbox" name="check3">SI
<br>
<input type="checkbox" name="check4">NO
<br>
<input type="submit" name="submit2" value="Verificar">
<br>
';
if (isset($_REQUEST['check3']))
{
$SI=$_REQUEST['check3'];
echo "La Respuesta es Correcta";
{
echo "<br>¿Pregunta 3?";
echo '
<br>
<input type="checkbox" name="check5">SI
<br>
<input type="checkbox" name="check6">NO
<br>
<input type="submit" name="submit3" value="Verificar">
<br>
';
if (isset($_REQUEST['check5']))
{
$SI=$_REQUEST['check5'];
echo "La Respuesta es Correcta";
}
}
}
}
}
if (isset($_REQUEST['check2']))
{
$NO=$_REQUEST['check2'];
echo "La Respuesta es Incorrecta";
}
if (isset($_REQUEST['check4']))
{
$NO=$_REQUEST['check4'];
echo "La Respuesta es Incorrecta";
}
if (isset($_REQUEST['check6']))
{
$NO=$_REQUEST['check6'];
echo "La Respuesta es Incorrecta";
}
?>
</form>
</body>
</html>

Es un problema con los ifs, que hay un lio grande montado ahí... lo mas fácil seria hacerlo así... lo pongo en pseudocódigo

if(isset($_REQUEST['sumbi1'])){

___si ha mandado la primera respuesta comprobar si es correcta...

___if(.....)

______echo("es correcta")

___else

______echo("No es correcta")

___motrar la pregunta siguiente.

}

elseif(isset($_REQUEST['sumbi2'])){

... Lo mismo que antes pero con la pregunta 2

}

elseif(isset($_REQUEST['sumbi3'])){

... Lo mismo que antes pero con la pregunta 3

}

else{

-----Lo que pasa si no ha enviado respuesta, osea mostrar la primera pregunta.

...

}

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas