Foros del Web » Programando para Internet » PHP »

Inexperto, script para hacer evaluación a usuarios

Estas en el tema de Inexperto, script para hacer evaluación a usuarios en el foro de PHP en Foros del Web. Hola, quiero hacer un formulario con preguntas para que mis usuaruias se hagan un examan de habilidades y que obtengan un puntaje, ellos deberian de ...
  #1 (permalink)  
Antiguo 13/02/2007, 15:09
Avatar de sidney rees  
Fecha de Ingreso: julio-2006
Ubicación: Argentina
Mensajes: 334
Antigüedad: 17 años, 9 meses
Puntos: 16
Inexperto, script para hacer evaluación a usuarios

Hola, quiero hacer un formulario con preguntas para que mis usuaruias se hagan un examan de habilidades y que obtengan un puntaje, ellos deberian de poder elegir entre 4 respuestas (multiple choise), no tengo mucha idea de php pero me esfuerzo y los puedo editar, lo que busco es un ejemplo.

¿Alguien me puede recomendar algun script para hacerlo?

Formato que busco:
Pregunta ¿Alguien conoce un script así?
a - Si, es este
b - Si pero no te lo quiero dar
c - No, lo siento
d - A mi me importa

^^! Lo ideal sería que en vez de a, b, c y d fueran check boxs.

Ojalá me puedan ayudar, muchas gracias de todas formas.
__________________
¿Tienes problemas para terminar tu proyecto? Nosotros te ayudamos, visitanos en Sidneyrees.com
  #2 (permalink)  
Antiguo 13/02/2007, 15:41
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
De acuerdo Re: Inexperto, script para hacer evaluación a usuarios

Creo mas bien que deberìan ser radio button no??, pues para que solo te escojan una de las posibles respuestas.

Y la verdad, no no conozco un script, aunque no creo que sea muy engorroso crearlo.

Saludos!!
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 13/02/2007, 23:32
Avatar de carlosmbrizuela  
Fecha de Ingreso: enero-2007
Ubicación: La Plata (Argentina)
Mensajes: 490
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: Inexperto, script para hacer evaluación a usuarios

aca tengo algo que hice hace un par de años en la facultad, no se si esta bien perom te puede ayudar.

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Ejercicio 2</title>
<style>
h1 {text-align: center;
    text-decoration: underline}

p {font-weight: bold}    
</style>
    
<script>
var total=0;



function ejer1 (){
    var t=0;
    if (parseInt(document.getElementById("cuenta1").value) == 158) 
        t += 10;
    if (parseInt(document.getElementById("cuenta2").value) == 195) 
        t += 10;
    if (parseInt(document.getElementById("cuenta3").value) == 209) 
        t += 10;
    return (t); 
   }

function ejer2a (){
  if (document.getElementById("incaa").checked)
      return (15);
      else return (0);
        }

function ejer2b (){
  if (document.getElementById("incba").checked)
      return (15);
      else return (0);
        }
                
function ejer3(){
  q=0;
  if (document.getElementById("m4").checked)
     q += 10;
  if (document.getElementById("m5").checked)
     q += 10;
  if (document.getElementById("m6").checked)
     q += 10;
  if (document.getElementById("m8").checked)
     q += 10;
  return (q);
}

function ensamble(){

total += ejer1();
total += ejer2a();
total += ejer2b();
total += ejer3();

document.getElementById("resultado").value = total;

if ((total > 60) && (total = 100))
    document.getElementById("nota").value = 'EXCELENTE';
if ((total >= 0) && (total < 40))
    document.getElementById("nota").value = 'MALO';
if (d(total >= 40) && (total <= 60))
    document.getElementById("nota").value = 'BUENO';


}

</script>
</head>

<body>
<h1>Evaluaci&oacute;n de Matem&aacute;ticas</h1>

<form name="examen" id="examen" action="">

<p>Ej:1 Realice las siguientes cuentas</p>

<p>a- 124 + 34 <input type="text" size=5 name="cuenta1" id="cuenta1"> 10 pts.</p>
<p>b- 230 - 45 <input type="text" size=5 name="cuenta2" id="cuenta2"> 10 pts.</p>
<p>c- 120 + 89 <input type="text" size=5 name="cuenta3" id="cuenta3"> 10 pts.</p>

<p>Ej:2 Seleccione el valor de la icognita</p>

<p>a- Si Juan tiene el triple de edad de Pedro y la edad de Pedro es la mitad que la de Roberto y junto
suman 30 años. ¿Cu&aacute;ntos años tiene Juan? (15pts)</p>

<p>Juan: 9<input type="radio" name="inc" id="incaa">
   Juan: 12<input type="radio" name="inc" id="incab">
   Juan: 15<input type="radio" name="inc" id="incac"></p>
   
<p>b- Ana saca en un examen 20 ptos mas que Elena. Elena saca la mitad de puntos de Roberto y
entre Elena y Roberto sacaron 80pts.. ¿Cu&aacute;ntos saca Ana? (15pts)</p>

<p>Ana: 50 pts.<input type="radio" name="incb" id="incba">
   Ana: 60 pts.<input type="radio" name="incb" id="incbb">
   Ana: 30 pts.<input type="radio" name="incb" id="incbc"></p> 
   
<p>Ej3: Seleccione, colocando un tilde, en los n&uacute;meros que sean m&uacute;ltiplos de 6: (40pts)</p>

<p> 20 <input type="checkbox" value="" name=m1 id=m1> 
    45 <input type="checkbox" value="" name=m2 id=m2>
    64 <input type="checkbox" value="" name=m3 id=m3></p>     
<p> 30 <input type="checkbox" value="" name=m4 id=m4> 
    48 <input type="checkbox" value="" name=m5 id=m5>
    66 <input type="checkbox" value="" name=m6 id=m6></p>     
<p> 35 <input type="checkbox" value="" name=m7 id=m7> 
    60 <input type="checkbox" value="" name=m8 id=m8>
    70 <input type="checkbox" value="" name=m9 id=m9></p>     

<p>PUNTAJE TOTAL: <input type="text" name="resultado" id="resultado"><br><br>
   NOTA FINAL: <input type="text" name="nota" id="nota"><br><br>
   <input type="button" value="Corregir" onClick="ensamble()"></p>
</form>


</body>
</html> 
saludos
  #4 (permalink)  
Antiguo 13/02/2007, 23:38
 
Fecha de Ingreso: mayo-2005
Mensajes: 257
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: Inexperto, script para hacer evaluación a usuarios

Maestro perdona mi ignorancia, pero tu scrtipt es en PHP?
  #5 (permalink)  
Antiguo 14/02/2007, 03:01
Avatar de cyrux_cob  
Fecha de Ingreso: febrero-2007
Mensajes: 28
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Inexperto, script para hacer evaluación a usuarios

Bueno socio yo tampoco soy muy experto pero he echo alguito, el ejemplo que pusiste se adapta más para el radio button, pero en el script que te mando te pongo dos ejemplos en que se usan checkboxs y radio.
Espero que te sirva de guía.
Realmente el código del formulario no tiene que ser php, de echo no lo es, por supuesto el script al que tu le pasas los datos si manipulará los datos con códigos php.

Bueno aquí va el script del formulario:

<form name="entrar_datos_checkbox" action="evaluar.php">
Pregunta para honestos:<br>
¿Cuál de estas preguntas usted se sabe?
<input type=checkbox name="opcion_checkbox[]" value=6> pregunta 1<br>
<input type=checkbox name="opcion_checkbox[]" value=4> pregunta 2<br>
<input type=checkbox name="opcion_checkbox[]" value=8> pregunta 3<br>
<input type=checkbox name="opcion_checkbox[]" value=9> pregunta 4<br><br>

Pregunta ¿Alguien conoce un script así? <br>
<input type="radio" name="opcion_radio" value="1"> Si, es este <br>
<input type="radio" name="opcion_radio" value="2"> Si pero no te lo quiero dar <br>
<input type="radio" name="opcion_radio" value="3"> No, lo siento <br>
<input type="radio" name="opcion_radio" value="4"> A mi me importa <br>
<input type="submit" name="aceptar" >
</form>


Luego el scrip php evaluar.php:

<?
echo "Resultado de la prueba:\n";
echo "Usted acumuló:\n";
$total= $opcion_checkbox[0]+$opcion_checkbox[1]+$opcion_checkbox[2]+$opcion_checkbox[3];
echo $total." puntos \n";
?>
<br>
<?
echo "Otro resultado";
echo"\n Conclución sobre mi colega de programación \n";
echo "Usted : \n" ;
switch($opcion_radio)
{
case 1:
echo "Es eficiente";
break;
case 2:
echo "Es egoista";
break;
case 3:
echo "Tiene que aprender";
break;
case 4:
echo "Es indiferente";
break;
}
?>

Yo lo probé y dan los resultados esperados. Ten encuenta que en el script enviar.php la variable $opcion_checkbox[] es un array
  #6 (permalink)  
Antiguo 14/02/2007, 06:51
Avatar de carlosmbrizuela  
Fecha de Ingreso: enero-2007
Ubicación: La Plata (Argentina)
Mensajes: 490
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: Inexperto, script para hacer evaluación a usuarios

gabyrsh: Si ves arriba del codigo dice HTML.

saludos
  #7 (permalink)  
Antiguo 14/02/2007, 09:07
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Inexperto, script para hacer evaluación a usuarios

hola
como dicen por ahi para este caso deberia ser con radio button, aunq hay algunos script q te permiten seleccionar solo un checkbox, sin duda q existen muxas formas de darle solucion a este problema.
Particularmente yo estoy realizando un sistema de evaluaciones y creo q es el mismo que quiere realizar sidney_rees, como esta en desarrollo, no puedo enviar codigo, pero si te puedo dejar la logica q estoy aplicando.

considera unas tablas si quires guardar los resultados, logicamente el usuario se logea y puede realizar los test, dependiendo si existen test programados, de existir, estan disponibles y puede entrar,( el tiempo lo maneja un javascript), luego por cada respuesta q entrege el usuario esta es guardada y se realiza un refresco y se deshabilita la pregunta para q no pueda volver a responderla y asi sucesivamente hasta q el tiempo se acabe o termine las preguntas.
para esto uso 2 paginas 1 donde esta el formulario y todas las preguntas(entre medio un php para desabilitar las preguntas respondidas) y la otra para guardado en tabla.

creo q lo mas importante en este caso no es la forma en q se ven las preguntas, sino la forma de "realizacion" para q sea fiel a la verdad.

una ves mas disculpa por no tener codigo, <? echo "en desarrollo"; ?>

ojala te sirva esta orientacion
  #8 (permalink)  
Antiguo 15/02/2007, 23:09
Avatar de sidney rees  
Fecha de Ingreso: julio-2006
Ubicación: Argentina
Mensajes: 334
Antigüedad: 17 años, 9 meses
Puntos: 16
Re: Inexperto, script para hacer evaluación a usuarios

¡Cielos amigos! Muchas gracias! Sobre todo a carlosmbrizuela y a cyrux_cob que me dieron una ayuda invaluable esos ejemplo fueron muy buenos.

Tambien a todos los demás que sus opiniones fueron de ayuda tambien.

Tambien un especal agradecimiento a rock_blues.NET cuya idea de aplicar tiempo al examne fue muy buena.

Pondré sus nombres al pie del examen como agradecimiento, toda mi comunidad se divertira haciendo este examen gracias a ustdes, cuando lo termine lo publico aquí para que lo vean. (Tambien el script final, quizás les sirva en el futuro)

De nuevo, gracias a todos.
__________________
¿Tienes problemas para terminar tu proyecto? Nosotros te ayudamos, visitanos en Sidneyrees.com
  #9 (permalink)  
Antiguo 16/02/2007, 09:17
Avatar de sidney rees  
Fecha de Ingreso: julio-2006
Ubicación: Argentina
Mensajes: 334
Antigüedad: 17 años, 9 meses
Puntos: 16
Re: Inexperto, script para hacer evaluación a usuarios

Hola Señores. Vengo a mostrarles como me está quedando, yo creo que terminé, solo queria que vieran y opinaran si es posible y que me dijeran si hice bien lo de el envio de datos a la base de dados con MySQL.

El link: http://www.planetarpg.com.ar/examen/

Todavía me falta implementar la idea de rock_blues.NET de poner tiempo.

(Se supone que debe validar que no se haya guardado la IP, lo cual quiere decir que esa persona ya tomo el examen una vez, si ese es el caso, solo se debe guardar el resultado de la primera prueba.)

(Miren al pie de pagina, justo debajo del Copyrights... ^-^ ... les gustará)

Cita:
<?php

$dbhost="localhost";
$dbuser="xxxxxxxxx";
$dbpass="xxxxxxxxx";
$db="xxxxxxxxx";

mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");

$totalPreg = 3;
$q1 = $_POST['q1'];
$q2 = $_POST['q2'];
$q3 = $_POST['q3'];
$name = $_POST['name'];
$ip = $_POST['ipaddr'];


if($q1==''||$q2==''||$q3==''||$name=='')
{
echo '<h1><p align = "center">Lo sentimos</p></h1>';
echo '</br>';
echo '<p>Debes responder todas las preguntas</p>';
}
else
{

$score = 0;
if($q1 == 1) // la respuesta correcta para q1 es 1
$score++;
if($q2 == 1) // la respuesta correcta para q2 es 1
$score++;
if($q3 == 1) // la respuesta correcta para q3 es 1
$score++;

$score = $score / $totalPreg * 100;


$ips=mysql_query("SELECT ip FROM users WHERE ip='$ipaddr'");
if($ip_ok=mysql_fetch_array($ips))
{
mysql_free_result($ips);
}else{
mysql_query("INSERT INTO users (nick,puntaje,ip) values ('$name','$score','$ip') ");
mysql_free_result($ips);
}

if($score < 70)
{
echo '<h1 align="center">Lo sentimos</h1></br>';
echo '</br>';
echo '<p>Necesitas sacar más del 70% para aprobar el examen</p>';
}
else
{

$score = number_format($score, 1);
echo '<h1 align="center">¡Felicidades!</h1>';
echo '</br>';
echo "<p>Bien hecho <b>$name</b>, has aprobado nuestro examen con $score%.</p>";
echo '</br>';
echo '<p>Pincha en la imagen para descargar tu certificado</p>';
echo '<form action="rtf.php" method="post">';
echo '<center>
<input type="image" src="certificate.gif" border="0">
</center>';
echo '<input type="hidden" name="score" value="'.$score.'">';
echo '<input type="hidden" name="name" value="'.$name.'">';
echo '</form>';

}
}
?>
__________________
¿Tienes problemas para terminar tu proyecto? Nosotros te ayudamos, visitanos en Sidneyrees.com

Última edición por sidney rees; 16/02/2007 a las 10:33
  #10 (permalink)  
Antiguo 16/02/2007, 09:45
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Inexperto, script para hacer evaluación a usuarios

o.O me siento alagado, te cuento q ya llevo 50% del desarrollo de mis evaluaciones en linea. xD haber si en algun momento les envio codigo para lo vean
  #11 (permalink)  
Antiguo 16/02/2007, 09:49
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Inexperto, script para hacer evaluación a usuarios

una duda con tu examen, y si tengo ip dinamica? creo q deberias validar con los datos del usuario del foro, weno solo eso.
  #12 (permalink)  
Antiguo 16/02/2007, 10:33
Avatar de sidney rees  
Fecha de Ingreso: julio-2006
Ubicación: Argentina
Mensajes: 334
Antigüedad: 17 años, 9 meses
Puntos: 16
Re: Inexperto, script para hacer evaluación a usuarios

¡Si! Justo venia a comentarles eso! Que lo de guardar la Ip no es buena idea porque pueden ser dinamicas, me decidí por guardar el mail.
__________________
¿Tienes problemas para terminar tu proyecto? Nosotros te ayudamos, visitanos en Sidneyrees.com
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:54.