PHP - Ayuda validacion de preguntas en php

   
Vista:

Ayuda validacion de preguntas en php

Publicado por Lizbeth (1 intervención) el 28/07/2017 05:50:35
Hola a todos, espero me puedan ayudar mi problema es este:
He creado un sistema de evaluación en php, pero al momento de calificar me aparece el error de que una pregunta o mas preguntas no han sido respondidas en caso de que se olvide contestar una, entonces mi pregunta es... ¿Cómo puedo crear una alerta para advertir al usuario que deba responder todas las preguntas?, o ¿cómo calificar esa pregunta que no ha sido respondida? Este es el codigo espero me puedan ayudar... Gracias

<?php //enlace y definicion de las variables
$user = (isset($_POST['user'])?$_POST['user']:NULL);
$pass = (isset($_POST['pss'])?$_POST['pss']:NULL);
$conec = mysql_connect("localhost", "root", "");
$numpreg= 20; //verificar si el numero de preguntas en aumento las califica

mysql_set_charset('utf8'); //detecta acentos y signos


if(!$conec){
echo "<p>Error: No se puede conectar al servidor</p>\n";
}

else{
$base = mysql_select_db("examenes",$conec);
if(!$base){
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";
echo "<a href=\"Index.php\"> Regresar</a> </p>\n";
}
else{
$nombre = mysql_query("SELECT nombre from usuarios where matricula='$user' and password='$pass'",$conec);

$presento = mysql_query("SELECT presento from usuarios where matricula='$user' and password='$pass'",$conec);

if(mysql_num_rows($nombre)<=0){
echo "<p>DATOS ERRONEOS<br>\n";
echo "<a href=\"index.php\"> Regresar</a> </p>\n";
}
else if(mysql_result($presento,0,'presento')==1){
echo "<p>El alumno ".mysql_result($nombre,0,'nombre')." matricula $user ya presento este examen<br>\n";
echo "<a href=\"Index.php\"> Regresar</a> </p>\n";
}
else{
echo "<h2> Examen de conocimientos</h2>\n";
echo "<p>Bienvenido alumno ".mysql_result($nombre,0,'nombre')."</p>\n";



$pregsInBD = mysql_query("SELECT count(idp) AS 'num' FROM preguntas",$conec);

$pregsExistentes = mysql_result($pregsInBD,0,'num');
for($r=0;$r<$numpreg;$r++) $vector[$r]=0;
for($r=0;$r<$numpreg;$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 '<form action="califica.php" method="post">'."\n";
for($r=0;$r<$numpreg;$r++)
{
$pregActu = mysql_query("SELECT preguntas from preguntas where idp='$vector[$r]'",$conec);
$txtPregActu = mysql_result($pregActu,0,'preguntas');
$tpPreg = mysql_query("SELECT tipo from preguntas where idp='$vector[$r]'",$conec);
$tipoPreg = mysql_result($tpPreg,0,'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
$corre = mysql_query("SELECT idr from corresp1 where idp='$vector[$r]'",$conec);
$numResp = mysql_num_rows($corre);
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($corre,$hui,'idr')."'",$conec);
$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";

//aqui debe de ir la alerta
echo '<input type="submit" value="Calificar">'."\n";


echo '</form>'."\n";
mysql_Close($conec);


}}}
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

Ayuda validacion de preguntas en php

Publicado por Juan (34 intervenciones) el 28/07/2017 11:01:56
Buenas

Lizbeth para eso podrías hacerlo con Javascript o bien puedes utilizar un framework de PHP (como Bootstrap) que tenga opciones de validación para poder implementarlas. Al menos así a bote pronto es lo que se me ocurre

Un saludo
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