Código de PHP - sistema para crear examen online

sin imagen de perfil

sistema para crear examen onlinegráfica de visualizaciones


PHP

Publicado el 30 de Abril del 2009 por Pedro (20 códigos)
89.914 visualizaciones desde el 30 de Abril del 2009
sistema para crear en examen en linea con las siguientes características:
a) debe validar la entrada de usuario usando login y password
b) cuantos enunciados se utilizaran para el examen
c) cada enunciado puede formarse pregunta texto abierta o una imagen precargada
d) cada respuesta debe ser expresada con respuestas múltiples o texto abierto
e) debe ser almacenada en bd
f) al finalizar el examen el sistema debe presentar la imagen, calificación, matricula y nombre
g) deben generar las preguntas aleatoriamente.

Versión 1
estrellaestrellaestrellaestrellaestrella(54)

Publicado el 30 de Abril del 2009gráfica de visualizaciones de la versión: Versión 1
89.915 visualizaciones desde el 30 de Abril del 2009
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Si alguno de los archivos de descarga no funciona, comentanos aquí el error.




Comentarios sobre la versión: Versión 1 (54)

19 de Diciembre del 2010
estrellaestrellaestrellaestrellaestrella
Soy el autor del codigo, mi comentario es para comunicar que hoy 18-dic-2010 encontre un error en este codigo, en el archivo califica.php linea num 54
1
$consulta = mysql_query("select idr from corresponde where idp='$preg[$cju] and sipi=1'",$conexion);
lo correcto debe ser:
1
$consulta = mysql_query("select idr from corresponde where idp=$preg[$cju] and sipi=1",$conexion);

Agradecimientos a: AFP quien me aviso del efecto que permitio detectar este error.
Responder
Elio Espinoza
14 de Junio del 2016
estrellaestrellaestrellaestrellaestrella
hermano necesito que me expliques que hace cada ciclo for que no lo entiendo muy bien que hacen
Responder
25 de Junio del 2016
estrellaestrellaestrellaestrellaestrella
Esto me solucionó el que no me calificaba con las respuestas correctas. Código funcionando correctamente.
Gracias
Responder
Daniel Jafet
18 de Septiembre del 2018
estrellaestrellaestrellaestrellaestrella
Hola que tal, me gustaria que subieras el código actualizado, ya que ahora da error con la nueva versión de xampp
Responder
24 de Marzo del 2011
estrellaestrellaestrellaestrellaestrella
disculpa pero tengo una duda que es lo que quiere decir sipi, aun no le entiendo.
Responder
29 de Abril del 2011
estrellaestrellaestrellaestrellaestrella
Hola, descargue tu codigo y me parece genial que lo hayas subido. Ahora quiero subir la bd, y no me la crea. La estoy importando con HeidiSQL, solo crea la bd y no crea las tablas. Que puedo hacer.

Gracias.
Responder
Ricardo Benítez
25 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
Esto es porque en el script tienes que quitar las líneas de comentarios
Responder
1 de Junio del 2011
estrellaestrellaestrellaestrellaestrella
Hermano se repiten demasiado option button
Responder
2 de Junio del 2011
estrellaestrellaestrellaestrellaestrella
Me gustaria saber como ingresas los datos a la base de datos en la tabla respuesta no la entiendo
Responder
11 de Julio del 2011
estrellaestrellaestrellaestrellaestrella
hola, me parece muy interesante el sistema que desarrollaste, pero cuando quiero inresar con un nombre registrado me sale el siguiente error:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in \examen.php on line 29

espero me puedas ayudar a resolver este problema
Responder
13 de Agosto del 2011
estrellaestrellaestrellaestrellaestrella
Holitas me parece muy bueno tu codigo todo funciono a la perfeccion
graciasssssssssssssssssssss
Responder
23 de Agosto del 2011
estrellaestrellaestrellaestrellaestrella
Buenas noches excelente el codigo pero que es sipi les agradeceria me respondieran

muchas gracias
Responder
4 de Septiembre del 2011
estrellaestrellaestrellaestrellaestrella
Hola.
guillermo y sebastian: sipi es una columna de la tabla corresponde, que relaciona las preguntas con las respuestas, cuando sipi vale 1 indica que esa respuesta es la correcta para esa pregunta.
ernesto: Nunca he trabajado con heidiSQl no que que decirte.
Alejandro: ¿no entiendo que quieres decir?
Mariana: el sistema solo es una demostracion no esta completo con panel de administracion, para ingresar datos en la bd tendrias que hacerlo manual desde consola o desde phpmyadmin
fatima: gracias.
danvarg: pues no me sale ese error, que version de php usas?

A todos: en el codigo va mi direccion de correo con confianza pueden escribirme ya que aqui en los comentarios tenia mucho que no pasaba y no se cuando vuelva a pasar y por lo tanto no me enteraba de sus dudas. Saludos,
Responder
17 de Febrero del 2012
estrellaestrellaestrellaestrellaestrella
Está excelente su código me sirvió muchísimo felicitaciones lo he implementado y me sale a la perfección. Quiero saber si es posible guardar los datos de las respuestas en la BD. Para después extraer esa info. Gracias por compartir el código y su conocimiento.
Responder
28 de Febrero del 2012
estrellaestrellaestrellaestrellaestrella
Agradezco el aporte, lo necesito al 100 %, pero no me crea las tablas con wamp server 5.
Responder
8 de Marzo del 2012
estrellaestrellaestrellaestrellaestrella
Buen día, quisiera saber como configurar el con la base de datos de un hosting gratuito
Responder
29 de Mayo del 2012
estrellaestrellaestrellaestrellaestrella
me parece bueno tu aporte pero como harias para validar el boton de calificar(algo como "estas seguro de calificar"")
Responder
31 de Mayo del 2012
estrellaestrellaestrellaestrellaestrella
para mayors de 400 usuarios se pierde la nota
Responder
20 de Julio del 2012
estrellaestrellaestrellaestrellaestrella
hola me puedes ayudar me sale este problema!! estoy utilizando appserv

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 6 in C:\AppServ\www\sitios\examen2\examen.php on line 59

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 7 in C:\AppServ\www\sitios\examen2\examen.php on line 62
1)

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 9 in C:\AppServ\www\sitios\examen2\examen.php on line 76


Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 10 in C:\AppServ\www\sitios\examen2\examen.php on line 76


Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 11 in C:\AppServ\www\sitios\examen2\examen.php on line 76



Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 15 in C:\AppServ\www\sitios\examen2\examen.php on line 76
Responder
16 de Agosto del 2012
estrellaestrellaestrellaestrellaestrella
Hola muy bueno este proyecto disculpa que te moleste pero soy nuevo en esto y no le entiendo muy bien solo keria hacerte unas preguntitas :)
primera puedes poner el codigo para poner mas preguntas
segunda puedes poner un contador de tiempo :)
Responder
17 de Octubre del 2012
estrellaestrellaestrellaestrellaestrella
Re bueno el codigo
el unico problema es que las respuestas siempre me salen en el mismo orden es decir la primera opcion siempre es la respuesta, mas bien necesito que me pueda mostrar las respuestas correctas aleatorias. mi codigo esta tal cual el tuyo.
a ver si me ayudas con ese tema gracias
aca esta mi codigo
examen.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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?
  $user = (isset($_POST['user'])?$_POST['user']:NULL);
  $pass = (isset($_POST['pss'])?$_POST['pss']:NULL);
  $numPregs = 10;
$pcomerciales = 1;
$pefectividad = 1;
  include("conexion.php");
  $link = Conectarse();
  if(!$link){
    echo "<p>Error: No se puede conectar al servidor</p>\n";
  }
  else{
    $bd = mysql_select_db("catbampc_examenes",$link);
	 if(!$bd){
	   echo "<p>Error: No se pudo seleccionar la bd</p>\n";
	 }
	 else if($user==null || $pass==null){
	   echo "<p>Error: Datos de login nulos<br>\n";
	   	 }
	 else{
	   $nombre = mysql_query("select nombre, ape_pat from usuarios where matricula='$user' and password='$pass'",$link);
	   $presento = mysql_query("select presento from usuarios where matricula='$user' and password='$pass'",$link);
	   if(mysql_num_rows($nombre)<=0){
	     echo "<p>Autentificacion incorrecta<br>\n";
	     	   }
	   else if(mysql_result($presento,0,'presento')==1){
	     echo "<p>El agente ".mysql_result($nombre,0,'nombre')." con rut $user ya presento este examen<br>\n";
	     	   }
	   else{
             echo "<h2> Examen de Cat</h2>\n";
             echo "<p>Bienvenido ".mysql_result($nombre,0,'nombre')." ".mysql_result($nombre,0,'ape_pat')."
</p>\n";
?>
Tiempo <label id = "clock"></label> segundos. (suerte)
<?
	     // seleccionar las preguntas aleatoriamente
	     $pregsInBD = mysql_query("select count(idp) as 'num' from preguntas",$link);
	     $pregsExistentes = mysql_result($pregsInBD,0,'num');
	     for($r=0;$r<$numPregs;$r++) $vector[$r]=0;
	     for($r=0;$r<$numPregs;$r++){
               $alea=rand(1,$pregsExistentes);
               $bandera=true;
               for($f=0;$f<$r;$f++)
                 if($vector[$f]==$alea){
                   $bandera=false;
                   break;
                 }
               if(!$bandera){ $r--; continue; }
               $vector[$r]=$alea;
             }
             echo '<form name="form" action="califica.php" method="post">'."\n";
             for($r=0;$r<$numPregs;$r++){
               $pregActu = mysql_query("select preguntas from preguntas where idp='$vector[$r]'",$link);
               $txtPregActu = mysql_result($pregActu,0,'preguntas');
               $tpPreg = mysql_query("select tipo from preguntas where idp='$vector[$r]'",$link);
               $tipoPreg = mysql_result($tpPreg,0,'tipo');
               echo "<p>\n";
          ?>
<div style="font-weight:bold; font-family: tahoma; ">
<?
echo "".($r+1).") ".$txtPregActu;
?>
</div>
<?
 
                 $consOps = mysql_query("select idr from corresponde where idp='$vector[$r]'",$link);
                 $numResp = mysql_num_rows($consOps);
                 echo "\n<br>";
                 echo ' <input type="hidden" name="preg'.($r+1).'" value="'.$vector[$r].'">'."\n";
                 for($hui=0;$hui<$numResp;$hui++){
$consResp = mysql_query("select respuesta from respuestas where idr='".mysql_result($consOps,$hui,'idr')."' order by rand(idr)",$link);
                   $valor= mysql_result($consResp,0,'respuesta');
 
                   echo '<input type="radio" name="'.$r.'" value="'.$valor.'">'.$valor."<br>\n";
                 }
 
               echo "</p>\n";
             }
             echo '<input type="hidden" name="mat" value="'.$user.'">'."\n";
             echo '<input type="submit" value="Calificar">'."\n";
             echo '</form>'."\n";
             mysql_Close($link);
          }
      }
  }
?>

adicionalmente desearia saber como puedo agregar diferentes categorias de examen es decir necesito 8 preguntas de un tipo 1 de otro tipo y otra de otro tipo , todas son abiertas pero se diferencias en bd que en ella se agrego una columna llamada forma con t (tecnico) c(comercial) y e(efectividad) segun la pregunta. gracias
Responder
23 de Marzo del 2013
estrellaestrellaestrellaestrellaestrella
BUEN CODIGO PERO AMI NO ME CORRE ME APARECE LO SIGUIENTE: examen.php
=10 preguntas $conexion = mysql_connect("localhost","root",""); if(!$conexion){ echo "

Error: No se puede conectar al servidor
\n"; } else{ $bd = mysql_select_db("examenes",$conexion); if(!$bd){ echo "

Error: No se pudo seleccionar la bd
\n"; } else if($user==null || $pass==null){ echo "

Error: Datos de login nulos
\n"; echo " Regresar al homie ese
\n"; } else{ $nombre = mysql_query("select nombre from usuarios where matricula='$user' and password='$pass'",$conexion); $presento = mysql_query("select presento from usuarios where matricula='$user' and password='$pass'",$conexion); if(mysql_num_rows($nombre)<=0){ echo "

Autentificacion incorrecta
\n"; echo " Regresar al homie ese
\n"; } else if(mysql_result($presento,0,'presento')==1){ echo "

El alumno ".mysql_result($nombre,0,'nombre')." matricula $user ya presento este examen
\n"; echo " Regresar al homie ese
\n"; } else{ echo "
Examen de conocimientos de variedades
\n"; echo "

Bienvenido alumno ".mysql_result($nombre,0,'nombre')."
\n"; // seleccionar las preguntas aleatoriamente $pregsInBD = mysql_query("select count(idp) as 'num' from preguntas",$conexion); $pregsExistentes = mysql_result($pregsInBD,0,'num'); for($r=0;$r<$numPregs;$r++) $vector[$r]=0; for($r=0;$r<$numPregs;$r++){ $alea=rand(1,$pregsExistentes); $bandera=true; for($f=0;$f<$r;$f++) if($vector[$f]==$alea){ $bandera=false; break; } if(!$bandera){ $r--; continue; } $vector[$r]=$alea; } // cargar las preguntas echo '
'."\n"; for($r=0;$r<$numPregs;$r++){ $pregActu = mysql_query("select preguntas from preguntas where idp='$vector[$r]'",$conexion); $txtPregActu = mysql_result($pregActu,0,'preguntas'); $tpPreg = mysql_query("select tipo from preguntas where idp='$vector[$r]'",$conexion); $tipoPreg = mysql_result($tpPreg,0,'tipo'); echo "

\n"; echo "".($r+1).") ".$txtPregActu; if($tipoPreg==1){ // abierta echo ' '."\n"; echo ' '."\n"; } else{ // multiopcion $consOps = mysql_query("select idr from corresponde where idp='$vector[$r]'",$conexion); $numResp = mysql_num_rows($consOps); echo "\n
"; echo ' '."\n"; for($hui=0;$hui<$numResp;$hui++){ $consResp = mysql_query("select respuesta from respuestas where idr='".mysql_result($consOps,$hui,'idr')."'",$conexion); $valor= mysql_result($consResp,0,'respuesta'); echo ''.$valor."
\n"; } } echo "
\n"; } echo ''."\n"; echo ''."\n"; echo '
'."\n"; mysql_Close($conexion); } } } ?>
Responder
Milay
27 de Febrero del 2017
estrellaestrellaestrellaestrellaestrella
Buenas después de mucho dar vueltas al código porque me daba el mismo error, lo resolví de la siguiente manera le asigne los valores al servidor, usuario, contraseña y base de datos por separado es decir así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 $user = $_POST["user"];
  $pass = $_POST["pss"];
  $numPregs = 10; // asegurarse q la bd tenga >=10 preguntas
  $servidor = "localhost"; //Nombre del servidor
	$usuario = "root"; //Nombre de usuario en tu servidor
	$password = ""; //Contraseña del usuario
	$base = "examenes"; //Nombre de la BD
	$conexion = mysql_connect($servidor, $usuario, $password);
 if(!$conexion){
    echo "<p>Error: No se puede conectar al servidor</p>\n";
  }
  else{
    $bd = mysql_select_db($base, $conexion);
	 if(!$bd){
	   echo "<p>Error: No se pudo seleccionar la bd</p>\n";
	 }
"De aquí en adelante lo deje igual e hice lo mismo con el archivo califica" ojo también hice la corrección de la linea 54 de la pag califica acotada por el autor del código".
espero y te resuelva el problema.
Responder
30 de Mayo del 2013
estrellaestrellaestrellaestrellaestrella
Hola amigo. interesante tu programa pero me sale el mismo error que a Williams, cual es el error que se tiene en el código de examen, espero y puedas responder.

gracias
Responder
9 de Julio del 2013
estrellaestrellaestrellaestrellaestrella
excelente programa gracias muchas dudas se me resolvieron saludos
Responder
15 de Julio del 2013
estrellaestrellaestrellaestrellaestrella
puedes decirme como ponerle tiempo para que se cierre el examen y se guarde en la base de datos
Responder
2 de Abril del 2014
estrellaestrellaestrellaestrellaestrella
excelente codigo la vda te luciste estoy estudiando todo sobre la web y no me habia tocado ver un codigo asi
la vda todo sale a la perfeccion y para el chavo que solo dice que solo acepta 400 alumnos lo puedes aumentar si le modificas algunos codigos
y algunos limitantes en la base de datos :)
Responder
2 de Abril del 2014
estrellaestrellaestrellaestrellaestrella
para el error que menciona Yorch
solo checa que al inicio venga
<?php
eso es lo que hace que falle el codigo examen.php y califica.php
Responder
Ale
25 de Octubre del 2019
estrellaestrellaestrellaestrellaestrella
si eso es loque falta
Responder
18 de Abril del 2014
estrellaestrellaestrellaestrellaestrella
y si no kiero que las preguntas m salgan aleatoriamente si no k m acomode aparte las preguntas abiertas y aparte las de opcion multiple
Responder
11 de Junio del 2014
estrellaestrellaestrellaestrellaestrella
y si no kiero que las preguntas m salgan aleatoriamente si no k m acomode aparte las preguntas abiertas y aparte las de opcion multiple
Responder
Miler
28 de Noviembre del 2014
estrellaestrellaestrellaestrellaestrella
el script esta super bueno, pero tengo algunas dudas.

Tengo dos preguntas.
1ro Como migro este examen a php orientado a objeto.
2do Como lo monto sobre un frameworks
Responder
JORGE
11 de Febrero del 2015
estrellaestrellaestrellaestrellaestrella
muchas gracias amigo, me sirvio de mucho y es lo que estaba buscando.
gracias por compartir este ejemplo
saludos y me funciona de maravilla
Responder
pedro 2.0
21 de Mayo del 2016
estrellaestrellaestrellaestrellaestrella
jorge explicame como te funciono,

ya logre crear la base de datos, cuando realizo el login no me abre el examen, me sales los mensaje de echo y no el examen:

Error: No se puede conectar al servidor
\n"; } else{ $bd = mysql_select_db("catbampc_examenes",$link); if(!$bd){ echo "
Error: No se pudo seleccionar la bd

\n"; } else if($user==null || $pass==null){ echo "
Error: Datos de login nulos
\n"; } else{ $nombre = mysql_query("select nombre, ape_pat from usuarios where matricula='$user' and password='$pass'",$link); $presento = mysql_query("select presento from usuarios where matricula='$user' and password='$pass'",$link); if(mysql_num_rows($nombre)<=0){ echo "

Autentificacion incorrecta
\n"; } else if(mysql_result($presento,0,'presento')==1){ echo "

El agente ".mysql_result($nombre,0,'nombre')." con rut $user ya presento este examen
\n"; } else{ echo "


explicame o enviame tu proyecto para ver en donde radica mi error.
Responder
Jonathan
17 de Marzo del 2015
estrellaestrellaestrellaestrellaestrella
muy buen programa, pero me sale un error en la calificación, No califica bien, le cambie la linea
$consulta = mysql_query("select idr from corresponde where idp=$preg[$cju] and sipi=1",$conexion);

y queda igual.
Responder
dey
27 de Abril del 2015
estrellaestrellaestrellaestrellaestrella
cual es usuario y en password ... por favor
Responder
José
14 de Junio del 2015
estrellaestrellaestrellaestrellaestrella
en lugar de mysql_result();
Cuál utilizo?
Responder
Marta
28 de Julio del 2015
estrellaestrellaestrellaestrellaestrella
Alguien sabe como aumentar las veces que pueda hacer un mismo alumno el test? Ya que ahora sólo se puede hacer 1 vez. Y si se puede cambiar esto, entonces, como se pone el contador para que vaya contando las veces que entra?

Gracias por adelantado!!!
Responder
Orlando
27 de Agosto del 2015
estrellaestrellaestrellaestrellaestrella
Hola muchas gracias por la explicación todo me funciona excepto lo siguiente

Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\examen\examen.php on line 33
Responder
Luis B
23 de Octubre del 2015
estrellaestrellaestrellaestrellaestrella
Alguien sabe como desactivar la opción aleatoria al cargar las preguntas? agradecería puedan ayudarme.. Saludos y felicidades al autor por este excelente codigo
Responder
Imágen de perfil
13 de Enero del 2016
estrellaestrellaestrellaestrellaestrella
Excelente código, todo me funciona bien, pero como puedo agregar más preguntas en la calificación
Responder
pedro 2.0
21 de Mayo del 2016
estrellaestrellaestrellaestrellaestrella
socio, a mi no me me funciona los archivos emanen y califica,

cuando los abro salen los mensajes de echo

"Error: No se puede conectar al servidor
\n"; } else{ $bd = mysql_select_db("catbampc_examenes",$link); if(!$bd){ echo "
Error: No se pudo seleccionar la bd

\n"; } else if($user==null || $pass==null){ echo "

NO ME SALE EL EXAMEN
Responder
Juan Ortiz
27 de Abril del 2016
estrellaestrellaestrellaestrellaestrella
Es un excelente codigo,i pregunta que funcion cumple el campo tipo en la tabla preguntas,muchas gracias
Responder
Brian Ipanaque
3 de Mayo del 2016
estrellaestrellaestrellaestrellaestrella
Estimado.
podrías proporcionarme el código fuente, he estado buscando esto por mucho tiempo.

De antemano muchas gracias.
Responder
Sergio
4 de Mayo del 2016
estrellaestrellaestrellaestrellaestrella
No logro crear la Base de datos, por mas que le he borrado los comentarios sigue igual, AYUDA POR FAVOR

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
create database examenes;
create table usuarios(matricula char(8), password varchar(15), nombre varchar(25), calif smallint, presento boolean, primary key(matricula));
create table preguntas(idp integer, preguntas varchar(74), tipo integer, primary key(idp));
create table respuestas(idr integer, respuesta varchar(40), primary key(idr));
create table corresponde(sipi boolean, idp integer, idr integer);
GRANT USAGE ON * . * TO 'userExamen'@'localhost' IDENTIFIED BY 'passExamen' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
GRANT SELECT , UPDATE ON `examenes` . * TO 'userExamen'@'localhost';
insert into usuarios values ('20202010', 'tomalas', 'pedro', 0, 0);
insert into usuarios values ('20122010', 'frias', 'jorge', 0, 0);
insert into usuarios values ('28202110', 'caguamas', 'humberto', 0, 0);
insert into usuarios values ('27292010', 'corona', 'elias', 0, 0);
insert into usuarios values ('21202015', 'modelo', 'cesar', 0, 0);
insert into usuarios values ('28202310', 'victoria', 'patty', 0, 0);
insert into usuarios values ('24202010', 'chaparra', 'claudia', 0, 0);
insert into usuarios values ('27202010', 'tomaaas', 'lupe', 0, 0);
insert into usuarios values ('26202910', 'chompetas', 'colossus', 0, 0);
insert into usuarios values ('20902710', 'greñas', 'macario', 0, 0);
insert into preguntas values (1,'cual es numero de puerto del protocolo http',2);
insert into preguntas values (2,'de que color es el caballo blanco de napoleon',2);
insert into preguntas values (3,'que utiliza para convertir funciones de dominio del tiempo a la frecuencia',2);
insert into preguntas values (4,'desarrolle el siguiente producto (a+b)^2',2);
insert into preguntas values (5,'escriba la definicion de direccion ip de tipo c',2);
insert into preguntas values (6,'que significa raid',2);
insert into preguntas values (7,'siglas de los tres colores primarios',1);
insert into preguntas values (8,'cual es la funcion del sistema operativo',1);
insert into preguntas values (9,'cual es el nombre del superusuario en linux',1);
insert into preguntas values (10,'como se llama el papa de timi turner',1);
insert into preguntas values (11,'es correcto el termino "cederrón" para definir a un cd',1);
insert into preguntas values (12,'por que la manzana de Apple computers esta mordida?',1);
insert into respuestas values (1,'80');
insert into respuestas values (2,'120');
insert into respuestas values (3,'18');
insert into respuestas values (4,'21');
insert into respuestas values (5,'negro');
insert into respuestas values (6,'blanco');
insert into respuestas values (7,'gris');
insert into respuestas values (8,'no tiene');
insert into respuestas values (9,'brujeria');
insert into respuestas values (10,'transformada de furier');
insert into respuestas values (11,'transformada de la place');
insert into respuestas values (12,'a^2+2ab+b^2');
insert into respuestas values (13,'a*2');
insert into respuestas values (14,'a+b+2*a');
insert into respuestas values (15,'255.255.255.255');
insert into respuestas values (16,'192.255.255.255');
insert into respuestas values (17,'10.11.12.13');
insert into respuestas values (18,'insectisida efectivo');
insert into respuestas values (19,'random aleatory inexpensive disk');
insert into respuestas values (20,'rayos asesinos intra dolorosos');
insert into respuestas values (21,'no se ponme cero');
insert into respuestas values (22,'RGB');
insert into respuestas values (23,'gestionar los recursos de una maquina');
insert into respuestas values (24,'root');
insert into respuestas values (25,'papa');
insert into respuestas values (26,'si');
insert into respuestas values (27,'steve jobs asi dijo');
insert into corresponde values (1,1,1);
insert into corresponde values (0,1,2);
insert into corresponde values (0,1,3);
insert into corresponde values (0,1,4);
insert into corresponde values (1,2,5);
insert into corresponde values (0,2,6);
insert into corresponde values (0,2,7);
insert into corresponde values (0,2,8);
insert into corresponde values (1,3,9);
insert into corresponde values (0,3,10);
insert into corresponde values (0,3,11);
insert into corresponde values (1,4,12);
insert into corresponde values (0,4,13);
insert into corresponde values (0,4,14);
insert into corresponde values (0,5,15);
insert into corresponde values (1,5,16);
insert into corresponde values (0,5,17);
insert into corresponde values (0,6,18);
insert into corresponde values (1,6,19);
insert into corresponde values (0,6,20);
insert into corresponde values (0,6,21);
insert into corresponde values (1,7,22);
insert into corresponde values (1,8,23);
insert into corresponde values (1,9,24);
insert into corresponde values (1,10,25);
insert into corresponde values (1,11,26);
insert into corresponde values (1,12,27);
Responder
Elio Espinoza
14 de Junio del 2016
estrellaestrellaestrellaestrellaestrella
hermano necesito que me expliques como funciona paso a paso cada ciclo for (que hacen cada uno)
Responder
24 de Junio del 2016
estrellaestrellaestrellaestrellaestrella
muy buen funciona muy bien.
Responder
12 de Octubre del 2016
estrellaestrellaestrellaestrellaestrella
el codigo funciona bien en mysql pero me gustaria hacerlo en orcle me podrian ayudar lo intentado hacer pero no salen las preguntas este es el codigo
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?php
$user = (isset($_POST['user'])?$_POST['user']:NULL);
$pass = (isset($_POST['pss'])?$_POST['pss']:NULL);
  $numPregs=9; // asegurarse q la bd tenga>=10 preguntas
  $conexion =OCILogon("sige", "3ducat10n1526","dbprod1");
   $nombre =OCIParse($conexion,"select nombre from usuario where matricula='$user' and password='$pass'");
           OCIExecute($nombre,OCI_DEFAULT);
   $presento =OCIParse($conexion,"select presento from usuario where matricula='$user' and password='$pass'");
            OCIExecute($presento,OCI_DEFAULT);
             if(OCIFetch($nombre)<=0){
	     echo "<p>Autentificacion incorrecta<br>\n";
	     echo "<a href=\"Index.php\"> Regresar al inicio</a> </p>\n";
	   }
	   else if(OCIresult($presento,0)==1){
	     echo "<p>El alumno ".OCIresult($nombre,0)."matricula='$user' ya presento este examen<br>\n";
	     echo "<a href=\"Index.php\"> Regresar </a> </p>\n";
	   }
	   else{
             echo "<h2> Examen Prueba</h2>\n";
             echo "<p>Bienvenido alumno".OCIresult( $nombre, "NOMBRE")."</p>\n";
	     // seleccionar las preguntas aleatoriamente
	     $pregsInBD=OCIParse($conexion,"select count(idp) as num from pregunta");
            OCIExecute($pregsInBD,OCI_DEFAULT);
	     $pregsExistentes=OCIresult($pregsInBD,"NUM");
             echo $pregsInBD;
	     for($r=0;$r<$numPregs;$r++)$vector[$r]=0;
 
	     for($r=0;$r<$numPregs;$r++){
 
              $bandera=true;
               for($f=0;$f<$r;$f++)
 
               if(!$bandera){ $r--; continue; }
               $vector[$r]= $pregsExistentes;
                          }
              // cargar las preguntas
             echo '<form action="califica.php" method="post">'."\n";
             for($r=0;$r<$numPregs;$r++){
 
               $pregActu=OCIParse($conexion,"select preguntas from pregunta where idp='$vector[$r]'");
                 OCIExecute($pregActu,OCI_DEFAULT);
               $txtPregActu=OCIresult($pregActu,"PREGUNTAS");
 
                $tpPreg=OCIParse($conexion,"select tipo from pregunta where idp='$vector[$r]'");
                OCIExecute($tpPreg,OCI_DEFAULT);
                $tipoPreg=OCIResult($tpPreg,"TIPO");
 
               echo "<p>\n";
               echo "".($r+1).")".$txtPregActu;
 
               if($tipoPreg==1){ // abierta
                 echo ' <input type="text" name="'.$r.'">'."\n";
                 echo ' <input type="hidden" name="preg'.($r+1).'" value="'.$vector[$r].'">'."\n";
               }
               else{ // multiopcion
                 $consOps = OCIParse($conexion,"select idr from corresponden where idp='$vector[$r]'");
                  OCIExecute($consOps,OCI_DEFAULT);
                 $numResp=ocinumcols($consOps);
                 echo "\n<br>";
                 echo ' <input type="hidden" name="preg'.($r+1).'" value="'.$vector[$r].'">'."\n";
                 for($hui=0;$hui<$numResp;$hui++){
                   $consResp=OCIParse($conexion,"select respuesta from respuesta where idr='".OCIresult($consOps,$hui)."'");
 
                   OCIExecute($consResp,OCI_DEFAULT);
                   $valor=OCIResult($consResp,"RESPUESTA");
                   echo '<input type="radio" name="'.$r.'" value="'.$valor.'">'.$valor."<br>\n";
                 }
               }
               echo "</p>\n";
             }
             echo '<input type="hidden" name="mat" value="'.$user.'">'."\n";
             echo '<input type="submit" value="Calificar">'."\n";
             echo '</form>'."\n";
           oci_Close($conexion);
          }
 
 
?>
Responder
chacha
13 de Octubre del 2016
estrellaestrellaestrellaestrellaestrella
oies discula aguien que me ayude los archivos examen y calfica no me funciona
Responder
brayan
4 de Octubre del 2020
estrellaestrellaestrellaestrellaestrella
Hola esta muy bueno el codigo, pero no me conecta con la base de datos dado que la conexion ya no es valido para php 7.0 ayuda por favor soy nuevo
Responder
Carmen
19 de Diciembre del 2020
estrellaestrellaestrellaestrellaestrella
hola
Ciertamente el código ya no funciona para la versión de php 7 alguien sabe que cambios se pueden hacer para que el código funcione correctamente
Gracias
Responder
Imágen de perfil
20 de Diciembre del 2020
estrellaestrellaestrellaestrellaestrella
Aquí he publicado la versión para PHP 7 modificando los comandos mysql_ por mysqli_
https://www.lawebdelprogramador.com/codigo/PHP/6784-Sistema-para-crear-examen-online-para-PHP7.html
Responder
Carmen
23 de Diciembre del 2020
estrellaestrellaestrellaestrellaestrella
Gracias Hermano
Responder
Maria
23 de Diciembre del 2020
estrellaestrellaestrellaestrellaestrella
Disculpen
Alguien Entiende bien como hace cuando carga las preguntas y las respuestas?
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s1791