Foros del Web » Programando para Internet » PHP »

Consulta a BD a traves de un Select Multiple

Estas en el tema de Consulta a BD a traves de un Select Multiple en el foro de PHP en Foros del Web. Hola a todos, tratare de explicar muy bien mi problema aunque creo que es bastante simple para ser explicado mal jeejee. Por ejemplo: tengo un ...
  #1 (permalink)  
Antiguo 27/10/2012, 16:49
 
Fecha de Ingreso: noviembre-2011
Ubicación: La Serena, Chile.
Mensajes: 15
Antigüedad: 13 años, 1 mes
Puntos: 0
Exclamación Consulta a BD a traves de un Select Multiple

Hola a todos, tratare de explicar muy bien mi problema aunque creo que es bastante simple para ser explicado mal jeejee.

Por ejemplo: tengo un Select multiple con 5 optiones; region1, region2... y asi. cada opcion tiene un id respectivo numerico.

Código HTML:
Ver original
  1. <select name="regiones[]" size="5" multiple>
  2. <option id="1">region1</option>
  3. <option id="2">region2</option>
  4. <option id="3">region3</option>
  5. <option id="4">region4</option>
  6. <option id="5">region5</option>

Ahora es el problema que no encuentro la forma de tomar mas de un campo y hacer la consulta Mysql. Por ejemplo si elijo las opciones 1,2 y 5, hacer la consulta y arroje la descripcion de las regiones elegidas.

La tabla de mi base de datos es simple, Se llama Regiones y con dos campos ID_regiones y descripcion.

Espero me puedan ayudar, de antemano muchas gracias.
  #2 (permalink)  
Antiguo 27/10/2012, 16:54
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 15 años, 1 mes
Puntos: 168
Respuesta: Consulta a BD a traves de un Select Multiple

El select solo va a tomar el valor del option que hallas elegido ultimo, no los anteriores, asi trabaja.
A demas de que no tenes value en ninguno de los option.

La unica forma de hacer eso que decis es usando ajax y que por cada vez que elijas un option diferente que se ejecute la llamada al servidor con la cual haces la consulta y devolves el resultado, pero por si solo sin ajax, al elegir un option el valor que se va a almacenar en el name de select es el de el ultimo option pulsado
  #3 (permalink)  
Antiguo 27/10/2012, 17:05
 
Fecha de Ingreso: noviembre-2011
Ubicación: La Serena, Chile.
Mensajes: 15
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Consulta a BD a traves de un Select Multiple

Hola Rodrigo

Gracias por tu respuesta tan rapida. Segun lo que dices, no estoy muy seguro de que solo con ajax esto sea posible, ya que la funcion del select multiple es para poder almacenar en un array los valores seleccionados de cada opcion, es por eso que en el name del select puse regiones[] como un arreglo. Quizas me equivoque en no poner un value a cada opcion para que se pueda comparar con el ID de la tabla en mi base de datos y asi mostrar la informacion de las opciones seleccionadas.

Ahora el tema es que no se como hacer la consulta, recorrer la tabla e ir mostrando la informacion.

Saludos
  #4 (permalink)  
Antiguo 27/10/2012, 17:14
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 15 años, 1 mes
Puntos: 168
Respuesta: Consulta a BD a traves de un Select Multiple

http://www.cmacias.com/selectbox-multiple/ a ver si eso te sirve, asi usa la libreria jquery, pero puramente con html solo no podes.
  #5 (permalink)  
Antiguo 27/10/2012, 17:31
 
Fecha de Ingreso: noviembre-2011
Ubicación: La Serena, Chile.
Mensajes: 15
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Consulta a BD a traves de un Select Multiple

Gracias nuevamente por tu respuesta Rodrigo pero creo que no me estas entendiendo.

Revise el link que me enviaste y esta bueno pero no es lo que busco, yo ya tengo hecho el select multiple y no tengo problemas con seleccionar mas de una opcion, el tema es que no se como capturar las opciones seleccionadas para luego hacer la consulta mysql a traves de php para que muestre la informacion de dichas opciones.

yo tengo escrito esto para tomar las opciones elegidas en el form

Código PHP:
Ver original
  1. $selecciones = $_POST['regiones'];

pero nose si ese es el codigo correcto para tomar los valores como un array para luego hacer un recorrido por la tabla de mi base de datos y luego mostrar las opciones elegidas, Quizas con la sentencia FOR o WHILE pero nose como lograrlo, tengo la idea pero no se como ejecutarla.

Etiquetas: bd, mysql, select, tabla, traves
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 03:10.