Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Datos de Select HTML a Variable PHP

Estas en el tema de Datos de Select HTML a Variable PHP en el foro de PHP en Foros del Web. Hola: no encuentro la forma de obtener el valor en una variable de lo seleccionado en el combobox de html. En un formulario tengo un ...
  #1 (permalink)  
Antiguo 31/05/2013, 11:24
 
Fecha de Ingreso: mayo-2013
Mensajes: 55
Antigüedad: 11 años
Puntos: 1
Pregunta Datos de Select HTML a Variable PHP

Hola:

no encuentro la forma de obtener el valor en una variable de lo seleccionado en el combobox de html.

En un formulario tengo un combobox asi:

Código HTML:
<form action="validauno.php" method="post">
1.- ¿Cuantas canicas tiene?<br/>
<select NAME="preguntauno_1[]" VALUE="preguntauno_1[]"  multiple">
<option NAME="preguntauno_1" value="one"> 49 o menos </option>
<option NAME="preguntauno_1" value="two"> de 50 a 99 </option>
<option NAME="preguntauno_1" value="three"> 100 o mas </option>
<option NAME="preguntauno_1" value="four" selected> </option>
</select>
</form> 
y en php necesito que me de el valor del combobox seleccionado:

Código PHP:
$uno $_POST['preguntauno_1'];
echo 
"seleccionaron $uno"
Y nada... no me da la información...

Fundamentalmente necesito que si el valor es distinto a 4 haga algo y si es igual haga otra cosa pero no puedo ni tomar el valor... alguien que me auxilie??

Gracias

PD solo en PHP ...

Última edición por albemartinez; 31/05/2013 a las 11:26 Razón: me faltó la PD
  #2 (permalink)  
Antiguo 31/05/2013, 11:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Datos de Select HTML a Variable PHP

1. Los <option> no necesitan name
2. El <select> no necesita value

Si no sabes lo que estás recibiendo lo mejor es que depures con var_dump($_POST) y veas la estructura que recibes.

De cualquier forma te sugiero leer el siguiente manual: http://www.php.net/variables.external

Como sea tu problema es más de HTML que de PHP, también deberías estudiar mas acerca de como se utilizan los formularios en HTML primero.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 31/05/2013, 11:43
 
Fecha de Ingreso: mayo-2013
Mensajes: 55
Antigüedad: 11 años
Puntos: 1
Respuesta: Datos de Select HTML a Variable PHP

Ya he cambiado el formulario muchas veces, he revisado varias paginas y en cada una dice algo distinto, lo hice primero pegado a lo que dice la W3C sobre los formularios pero como no va, le he buscado en otros lados ...

Leeré la liga, gracias
  #4 (permalink)  
Antiguo 31/05/2013, 12:53
 
Fecha de Ingreso: mayo-2013
Mensajes: 55
Antigüedad: 11 años
Puntos: 1
Respuesta: Datos de Select HTML a Variable PHP

Nooo pues no doy...

En el valor me dice Array ... pffff

y Ya le busque por todos lados y según yo al código no le falta nada...

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <meta charset="utf-8" />
  3. <title>Test IT</title>
  4. </head>
  5. <form action="validauno.php" method="post">
  6. <br/>
  7. 1.- ¿Cuantas canicas tiene?<br/>
  8. <select NAME="preguntauno_1[]">
  9. <option value="one"> 49 o menos </option>
  10. <option value="two"> de 50 a 99 </option>
  11. <option value="three"> 100 o mas </option>
  12. <option value="four" selected>  </option>
  13. <br/>

Código PHP:
<?php
$uno 
$_POST['preguntauno_1']; 


echo 
$uno;
y cuando hago la consuta dice Array ...

Alguien alguna idea??

En el manual de PHP dice que con [] se obtiene el value de todas las opciones pero no me da....
  #5 (permalink)  
Antiguo 31/05/2013, 12:59
 
Fecha de Ingreso: mayo-2013
Mensajes: 55
Antigüedad: 11 años
Puntos: 1
Respuesta: Datos de Select HTML a Variable PHP

jajajajajaja...

me sobra el []

lool
  #6 (permalink)  
Antiguo 31/05/2013, 13:08
 
Fecha de Ingreso: mayo-2013
Mensajes: 19
Antigüedad: 11 años
Puntos: 0
Respuesta: Datos de Select HTML a Variable PHP

si lo armas al select de esta manera:
<select NAME="preguntauno_1[]">
<option value="one"> 49 o menos </option>
<option value="two"> de 50 a 99 </option>
<option value="three"> 100 o mas </option>
<option value="four" selected> </option>
</select>
<br/>

cuando toma el valor con el $_POST te toma todos los valores del select por eso te sale Array, si le imprimes por ejemplo asi:

print "<pre>";print_r($uno);

te va a dar todos los valores del select

ahora si solo necesitas un solo valor que selecciona el usuario:

quitale el []
<select NAME="preguntauno_1">
<option value="one"> 49 o menos </option>
<option value="two"> de 50 a 99 </option>
<option value="three"> 100 o mas </option>
<option value="four" selected> </option>
</select>

y si imprimes la variable $uno
solo te sale el que escogiste:

echo $uno;
  #7 (permalink)  
Antiguo 31/05/2013, 13:55
 
Fecha de Ingreso: mayo-2013
Mensajes: 55
Antigüedad: 11 años
Puntos: 1
Respuesta: Datos de Select HTML a Variable PHP

Cita:
Iniciado por chicho_2667 Ver Mensaje
si lo armas al select de esta manera:
<select NAME="preguntauno_1[]">
<option value="one"> 49 o menos </option>
<option value="two"> de 50 a 99 </option>
<option value="three"> 100 o mas </option>
<option value="four" selected> </option>
</select>
<br/>

cuando toma el valor con el $_POST te toma todos los valores del select por eso te sale Array, si le imprimes por ejemplo asi:

print "<pre>";print_r($uno);

te va a dar todos los valores del select

ahora si solo necesitas un solo valor que selecciona el usuario:

quitale el []
<select NAME="preguntauno_1">
<option value="one"> 49 o menos </option>
<option value="two"> de 50 a 99 </option>
<option value="three"> 100 o mas </option>
<option value="four" selected> </option>
</select>

y si imprimes la variable $uno
solo te sale el que escogiste:

echo $uno;
Justamente asi Chicho... muchas gracias.

No me había dado cuenta del cambio cuando pones []

Cierro tema lo marco como solucionado... gracias de nuevo

Etiquetas: formulario, html, select, variable
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 09:43.