Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Comparar valores de un select

Estas en el tema de Comparar valores de un select en el foro de PHP en Foros del Web. Buenas. Tengo lo siguiente: Código PHP: < form action = "corregir.php"  method = "post"  name = "pregunta" > < label  for= "select" ></ label >      ...
  #1 (permalink)  
Antiguo 21/05/2013, 11:06
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Comparar valores de un select

Buenas.
Tengo lo siguiente:


Código PHP:
<form action="corregir.php" method="post" name="pregunta">
<
label for="select"></label>
    
Seleccione la respuesta correcta:
    <
select name="select91" size="1" id="select">
    <
option selected="selected"> </option>
    <
option value="A">A</option>
    <
option value="B">B</option>
    <
option value="C">C</option>
    <
option value="D">D</option>
  </
select
Vamos a suponer que ese codigo es de una pregunta y la respuesta correcta es la opcion B.

En corregir.php quisiera realizar la siguiente funcion:
Recoger la opcion seleccionada por el usuario.
Compararla con la opcion correcta (la opcion B).
Si es igual, redirigir a una nueva pagina.
Si es distinta, cargar de nuevo la misma pagina.

Mi duda es saber como se recoge el selected hecho por el usuario y se compara con el valor que yo ponga.

Alguna idea?
Gracias
  #2 (permalink)  
Antiguo 21/05/2013, 11:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Comparar valores de un select

Lee lo siguiente, ahí se explica.
http://www.php.net/variables.external
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 21/05/2013, 11:20
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

Debo de ser tremendamente tonto porque no veo lo que busco...
  #4 (permalink)  
Antiguo 21/05/2013, 11:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Comparar valores de un select

Tampoco te laceres, puede que no estés leyendo correctamente.

Revisa los ejemplos y no te desesperes, es bastante claro lo que ahí se explica.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 21/05/2013, 11:30
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Comparar valores de un select

Creo que le daré una ayuda ...

Lee esto otro talvez aqui comprendas mejor

http://www.phpya.com.ar/temarios/descripcion.php?cod=30
http://www.cyberexplorador.com/2009/...y-procesarlos/
  #6 (permalink)  
Antiguo 21/05/2013, 11:41
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

Vale.
Pero no veo como llamar al valor de una opcion...
  #7 (permalink)  
Antiguo 21/05/2013, 11:53
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Comparar valores de un select

Cita:
Iniciado por migue_coco Ver Mensaje
Vale.
Pero no veo como llamar al valor de una opcion...
Te lo dire con piedritas, de la misma forma que capturas un texbox puedes capturar cualquier elemento html que tengas....


http://www.forosdelweb.com/f18/recog...ml-php-672100/

Sin duda que no dedicas tiempo a buscar en internet, ingresa a
www.google.com o al buscador del foro y hay muchas opciones....
  #8 (permalink)  
Antiguo 21/05/2013, 12:02
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

Desde luego este foro brilla por la ausencia de ayuda...
Que esta muy bien hacer que la gente aprenda un poco, pero cuando somos autodidactas, necesitamos de ayuda, y a mi tus enlaces no me estan sirviendo para nada, aunque los agradezco

Sigo sin saber como hacer lo que pedia al principio.
  #9 (permalink)  
Antiguo 21/05/2013, 12:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Comparar valores de un select

Cita:
Iniciado por migue_coco Ver Mensaje
[...] Sigo sin saber como hacer lo que pedia al principio.
Es que son varias cosas, si no tienes las nociones básicas jamás vas a comprender algo así.

Necesitas entender lo siguiente:

Las variables de un formulario se reciben usando las variables $_GET, $_POST, $_FILES o $_REQUEST, consulta en el manual para que sepas en que consiste cada una de estas variables.

Para pronto, si tu formulario tiene method="post" entonces deberás usar $_POST para leer las variables del formulario.

Dichos nombres se definen en el mismo formulario, usando el atributo name="nombre" para poder recuperar su valor con $_POST['nombre'] respectivamente.

Ahora, la lógica que deseas aplicar ya es responsabilidad tuya, sólo tu sabes que valores quieres comparar además de que ya debes manejar las estructuras lógicas básicas para esto: if-then-else, loops, etc.

De todo lo que has leído, ¿qué parte es exactamente la que no entiendes?

PDTA: la excusa del autodidacta es mala, te lo digo porque yo aprendí así y en mis tiempos no tenía ni Internet como para andar preguntando a todo mundo.

El procedimiento es sencillo, te descargas las referencias que necesites, las lees y practicas hasta que comprendas lo que estás haciendo.

Eso, estimado usuario, es ser autodidacta, que significa enseñarse a uno mismo, cosa que veo no sabes aplicar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 21/05/2013, 12:14
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

...
Me parece que aun no has entendido lo que pretendo.
Se perfectamente como funcionan las variables (al menos me defiendo).
Lo que no tengo ni remota idea es como hacer que cuando un usuario seleccione una opcion de entre 4, la compare con la opcion correcta de entre esas 4.
Se como llamar a la opcion que selecciona el usuario, pero no se como llamar yo a un valor en concreto del mismo select.
El resto del codigo lo tengo, varibles, comparacion y salidas. Pero la llamada a (por ejemplo) la opcion del select con value=C no se como hacerla.
He rebuscado por la red y nada.
Mi ingles es pesimo, asi que quizas me he saltado alguna explicacion por no tener ni pajolera idea de lo que hablan.
Pero en español no lo he encontrado o no se como buscarlo (y he probado de muchisimas formas)
  #11 (permalink)  
Antiguo 21/05/2013, 12:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Comparar valores de un select

El problema es que el código no puede leer tu mente para saber cual es el valor correcto.

Eso lo debes indicar tu, eso lo debes tener en algún lado para poder indagar, sencillamente el código hará lo que le digas, no lo que pienses.

Imagina que tienes las respuestas correctas en un array:
Código PHP:
Ver original
  1. $respuestas = array(
  2.   'pregunta_1' => 'pato',
  3. );
  4.  
  5. $intento = $_POST['pregunta_1'];
  6. $solucion = $respuestas['pregunta_1'];
  7.  
  8. if ($intento !== $solucion) {
  9.  // YOU BAD!
  10. }

¿Se entiende?

Ahora veamos lo que sugieres:
Cita:
pero no se como llamar yo a un valor en concreto del mismo select.
Eso es lo que estás confundiendo, PHP no conoce nada del HTML a menos que le indiques, sencillamente no se pasa todo el <select/> como para que le puedas "preguntar" algo.

La estructura de datos es responsabilidad tuya, si tienes los datos en algún lado y con eso generas el <select/> entonces no deberías tener problemas, si el HTML es lo único que tienes entonces ya deberías darte cuenta que estás omitiendo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 21/05/2013, 12:33
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

Gracias por la explicacion.
Sería correcto este codigo o es una chapuza?

Código PHP:
$correcta ='B';
$select91=$_POST['select91'];

if(
$select91 == $correcta)
    echo 
"Correcto";
    else echo 
"Error"
  #13 (permalink)  
Antiguo 21/05/2013, 12:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Comparar valores de un select

Que sea una chapuza no significa que sea correcto o no, por mi puedes escribir con los pies si así te sienta mejor.

La única forma de saber si funciona tu código es ejecutándolo, tu sabrás.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #14 (permalink)  
Antiguo 21/05/2013, 12:44
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Comparar valores de un select

Si, funcionar funciona.

Gracias de nuevo por la ayuda y por las explicaciones.
Un saludo.

Etiquetas: select
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 08:39.