Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/08/2011, 07:34
Ueki
 
Fecha de Ingreso: septiembre-2009
Mensajes: 210
Antigüedad: 15 años, 2 meses
Puntos: 19
Respuesta: porque no me funciona este codigo?

Hola!

En este código tienes algunos pequeños fallos que voy a proceder a corregir, y también te explicaré un par de cositas.

Código PHP:
Ver original
  1. <html>
  2. <body>
  3. <?php
  4. if(isset($_GET['enviar']))
  5. {
  6.     if(isset($_GET['una']) and $_GET['una']==1){
  7.     echo $_GET['una'];
  8.     }
  9.     if(isset($_GET['dos']) and $_GET['dos']==1){
  10.     echo $_GET['dos'];
  11.     }
  12. }
  13. else
  14. {
  15.     ?>
  16. <form name="form" method="get" action="prueba.php">
  17. <select name="una" >
  18.    <option value=0>SELECION_UNA</option>
  19.    <option value="1">primera</option>
  20.    <option value="2">segunda</option>
  21.    <option value="3">tercero</option>
  22. </select>
  23. <select name="dos" >
  24.    <option value=0>SELECION_DOS</option>
  25.    <option value="1">dos_primera</option>
  26.    <option value="2">dos_segunda</option>
  27.    <option value="3">tres_tercera</option>
  28. </select>
  29. <input type="submit" name="enviar" value="enviar">
  30. </form>
  31.     <?php
  32. }
  33. ?>
  34. </body>
  35. </html>

Donde pones if ( isset($_GET['una']) and $_GET['una']==1)
Estás diciendo: Si existe "una" y "una" es igual a 1, muestra esto.

Luego, donde dices if ( isset($_GET['dos']) and $_GET['dos']==1)
Estás diciendo: Si existe "dos" y "dos" es igual a 1, muestra esto.

Eso nunca se va a cumplir, porque lo que recogen tus $_GET[''] no son números, es lo que pone en los "Value" de las "option".

Además, como te he puesto en el código de arriba, siempre es mejor comprobar primero si se ha enviado la variable "enviar".

No sé si me expliqué bien, en caso contrario avísame.