Nueva pregunta

Pregunta:

Fecha: 01-04-2018 10:22:54 (En Español)

¿Como validar una respuesta Corta?[No resuelta]

Hola comunidad, tengo un pequeño o grande detalle, como podrían validar la respuesta de una pegunta corta utilizando el lenguaje PHP.

Teniendo la siguiente pregunta "¿Qué es lo que quema un cohete?" -- En donde su respuesta sería OXÍGENO y COMBUSTIBLE, o sí simplemente si el usuario escribiera solo unas de ella y que al verificar se mostrará el punto que obtuvo de esa respuesta. Por ejemplo el valor de la pregunta sería 2 puntos...
NOTA: en dado caso conozco que se podría utilizar de Selección Múltiples o de Casillas...
Etiquetas: PHP - PHP Avanzado - Pregunta Votos: 1 - Respuestas: 2 - Vistas: 12 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 01-04-2018 13:46:35 Prueba así:

    //Cadena a validar
    $cadena = " se quema Oxigeno y combustible";
    
    //Pasamos la Cadena a minusculas para su verificación
    $n = strtolower($cadena);
    
    //Separamos la cadena en un array
    $valida = explode(" ",$n);
    
    //Inicializamos los untos en cero
    $puntos = 0;
    
    //Verificamos si las palabras que buscamos estan presentes
    foreach($valida as $item){
        if($item ==  "oxigeno" || $item  == "combustible"){
            //De ser positivo asignamos los puntos
            $puntos = $puntos +1;
        }
    }
    //Mostramos el resultado
    echo "Puntos obtenidos con la respuesta: ".$puntos;
    
      Votos: 2 - Link respuesta
     
  • Fecha: 23-04-2018 18:54:53 Hola, gracias por tu respuesta es un muy eficiente en tu resultado... Sin embargo en esta parte no me dí a entender mejor =>Teniendo la siguiente pregunta "¿Qué es lo que quema un cohete?".
    En otras palabras quería decir => Teniendo como ejemplo la siguiente pregunta mencionada ya que por ende las preguntas pueden variar desde una base de datos y sus respectivas respuestas.

    Aunque puedo intentar tu solución de la siguiente manera para poder verificar la respueta correcta y del usuario.

    
    $preguntas = [
      {
        pregunta:  "¿Qué es lo que quema un cohete?",
        respuesta : "oxigeno y combustible",
        respuesta_usuario : "se quema Oxigeno y combustible"
      },
      {
        pregunta:  "¿El lenguaje PHP es un lenguaje del?",
        respuesta : "servidor",
        respuesta_usuario : "Del lado del servidor"
      },
      {
        pregunta:  "¿SQL es?", 
        respuesta : "Structured Query Language",
        respuesta_usuario : "significa Structured Query Language"
      }
      
    ];
    
     //Inicializamos los untos en cero
      $puntos = 0;
    
    foreach($preguntas as $preg){
       $cadena = $preg.respuesta_usuario;
      //Pasamos la Cadena a minusculas para su verificación
      $n = strtolower($cadena);
    
      //Separamos la cadena en un array
      $valida = explode(" ",$n);
    
    
        $n = strtolower($preg.respuesta);
        $respuesta= explode(" ",$n);
     
      //Verificamos si las palabras que buscamos estan presentes
      foreach($valida as $item) {
         foreach($respuesta as $res) {
           if($item == $res){
             //De ser positivo asignamos los puntos
             $puntos = $puntos +1;
           }
        }
      }
    }
    
    
    //Mostramos el resultado
    echo "Puntos obtenidos con la respuesta: ".$puntos;


    Gracias por haber dado el tiempo @Carlor Quintero... Si tienes otras observación o solución sería bueno conocerlo
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com