Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/12/2008, 07:15
Framinan
 
Fecha de Ingreso: diciembre-2008
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Ayuda con corrección de test (*URGENTE*)

Hola a todos. Estamos haciendo un trabajo sobre HTML y PHP, y necesitamos hacer un test que se corrija automaticamente. El test se genera con las preguntas de una base de datos, y tiene que corregirse comparando la opción seleccionada con la opción correcta, almacenada en la base de datos tambien.

Necesitamos almacenar la respuesta seleccionada en una tabla para compararla con la tabla de respuestas correctas no?? ElL problema es que las preguntas no son estáticas, sino que cada test debe ser aleatorio... Gracias por la ayuda!

Os dejo el codigo para ayudaros:

<html>
<head>
<title> Introducir Preguntas y Respuestas</TITLE>
</head>

<body bgcolor=#C8F200>

<A HREF="alumno.html#marcador">
<IMG SRC="imagenes/cabecera.jpg" WIDTH="100%">
<A NAME="marcador">
</A>

<font size=6 face='gulim'>
<P align="center">
Marque la Respuesta Correcta
<br>
Al finalizar pulse en <B>Enviar</B>
<br>
</P>
<FORM>
<?php
$link = mysql_connect("localhost","grupo11","grupo11")
or die ("No se ha podido conectar");

mysql_select_db("datos1")
or die("Error al tratar de selecccionar esta base");

$dbname="datos1";
$tablename="preguntas";
$cont=1;
$resp="resp";

$query="SELECT * FROM $tablename;";
$result=mysql_db_query ($dbname, $query);
while ($row = mysql_fetch_array ($result))
{
print ("<TD><b>$cont $row[texto_pregunta]</b><BR></TD><HR width=25% align='left'>\n");

print ("<TR>");
print ("<TD><INPUT type=radio name=$cont value=$resp> $row[opc_1]<BR></TD>\n");
print ("<TD><INPUT type=radio name=$cont value=$resp> $row[opc_2]<BR></TD>\n");
print ("<TD><INPUT type=radio name=$cont value=$resp> $row[opc_3]<BR></TD>\n");
print ("<TD><INPUT type=radio name=$cont value=$resp> $row[opc_4]<BR><BR></TD>\n");
print ("</TR>");
$cont++;
// con esta sentencia sql insertaremos los datos en la base de datos

mysql_query("INSERT INTO contestacion (id_resp,texto_pregunta,resp) VALUES ('$cont','$row[texto_pregunta]','$resp')");
}
mysql_free_result($result);
?>
</table>
<input TYPE="submit" VALUE="Enviar Test">&nbsp;<input TYPE="reset" VALUE="Limpiar Test">
</FORM>
</BODY>
</HTML>