Foros del Web » Programando para Internet » PHP »

Ayuda con select de eleccion multiple

Estas en el tema de Ayuda con select de eleccion multiple en el foro de PHP en Foros del Web. Hola a todos, resulta que tengo el siguiente select en un formulario: <select name="hipodromo" size="5" multiple="MULTIPLE" class="checkboxlectura" id="hipodromo"> <? $sql=("SELECT sbatabla.descripcio des,sbatabla.codele co from sbatabla ...
  #1 (permalink)  
Antiguo 24/02/2010, 08:11
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 14 años, 11 meses
Puntos: 3
Ayuda con select de eleccion multiple

Hola a todos, resulta que tengo el siguiente select en un formulario:

<select name="hipodromo" size="5" multiple="MULTIPLE" class="checkboxlectura" id="hipodromo">
<? $sql=("SELECT sbatabla.descripcio des,sbatabla.codele co from sbatabla where codtab='hi2' order by descripcio ASC");
$result=mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$id = $row['co'];
$propietario = $row['des'];
echo "<option value='$id'>$propietario</option>";
}
?>
</select>


el cual arroja un listado de hipodromos, el usuario tiene la opcion de elegir 1 o mas de 1 a la ves.
Cuando lo hace por Get manda las variables.
El problema que tengo es como hago para recibir todas las variables que manda.
Osea yo tengo $hipodromo = $_GET['hipodromo'];
y lo que logro con esto es tomar la ultima nada mas pero necesito todas para hacer un select mas adelante.

Saludos y gracias
  #2 (permalink)  
Antiguo 24/02/2010, 08:13
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Ayuda con select de eleccion multiple

A que te refieres de recibir todas las variables que manda. Podrías replantear la duda.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 24/02/2010, 08:16
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 1 mes
Puntos: 29
Respuesta: Ayuda con select de eleccion multiple

Código PHP:
Ver original
  1. foreach($_GET['hipodromo'] as $clave=>$valor) {
  2. echo $clave ." - ". $valor;
  3. }

Prueba esto.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #4 (permalink)  
Antiguo 24/02/2010, 08:20
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: Ayuda con select de eleccion multiple

si a recibir todas las variables para luego meterlas en un select.

gracias.

ahora otra duda si no molesta. si yo tomo esas variables por ej 1 , 2,3,4 y en el select necesito que diga hi =1 and hi=2 and hi=3 por ej puede ser que haya una forma de poner algo asi como IN (1,2,3,4) ?. osea reemplazar el and por eso.
porque mi idea es tomando esos valores hacer una consulta como dice arriba.

Saludos y muchas gracias nuevamente.
  #5 (permalink)  
Antiguo 24/02/2010, 08:29
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: Ayuda con select de eleccion multiple

estoy poniendo lo siguiente ;

if (!empty($_GET['hipodromo'])){ //HIPODROMOS
$hipodromo = $_GET['hipodromo'];
foreach($hipodromo as $clave=>$valor) {
echo $clave ." - ". $valor;
}
}

pero me arroja el siguiente error
Warning: Invalid argument supplied for foreach() in /var/www/cc/detalle/index.php on line 35

la linea 35 es la que tiene el foreach
  #6 (permalink)  
Antiguo 24/02/2010, 08:35
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 1 mes
Puntos: 29
Respuesta: Ayuda con select de eleccion multiple

Envías el formulario por get o por post?
He programado un blog en el que en las entradas pueden ir múltiples etiquetas con el mismo código y va perfecto:
Código PHP:
Ver original
  1. $etiqueta=$_POST['etiqueta'];
  2. if(!$etiqueta) { $etiqueta=0; } else {
  3. $etiqueta="";
  4. foreach ($_POST['etiqueta'] as $indice => $valor){
  5.     $etiqueta.="@-".$valor."-@";
  6. }
  7.  
  8. }
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #7 (permalink)  
Antiguo 24/02/2010, 08:48
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con select de eleccion multiple

Para que se envie correctamente el formulario y puedas recojer los datos de un select múltiple, el nombre del campo debe referirse implícitamente a un array, siendo cada uno de los elementos seleccionados del select un elemento del array. Para esto, el tag select debe llevar esta estructura:

Código PHP:
Ver original
  1. <select name="nombre_del_campo[]">
Los corchetes indican que el valor de cada opción seleccionada del select se guardará en el array 'nombre_del_campo'. Después lo recogerás de la forma que ya te han indicado:
Código PHP:
Ver original
  1. // Supongiendo que usas GET
  2. // Siempre es bueno validar antes de usar un foreach, para evitar mensajes de error
  3. if(is_array($_GET['nombre_del_campo'])) {
  4.     foreach($_GET['nombre_del_campo'] as $opcion) {
  5.         // $opción  es el valor de cada opción seleccionada
  6.     }
  7. }

  #8 (permalink)  
Antiguo 24/02/2010, 09:22
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: Ayuda con select de eleccion multiple

ahi lo hice de la siguiente manera pero me falta algo todavia

if(!empty($_GET['hipodromo'])){
foreach ($_GET['hipodromo'] as $indice => $valor)
{
$hip=$valor.",";
echo $hip;
}
}

lo que me da como resultado es por ej si los valores son 1 2 3 4 5 6
me da 1,2,3,4,5,6, y el problema es que necesito que la coma del ultimo no salga, como puedo hacer eso?
  #9 (permalink)  
Antiguo 24/02/2010, 09:27
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 1 mes
Puntos: 29
Respuesta: Ayuda con select de eleccion multiple

Código PHP:
Ver original
  1. $hip=substr($hip, 0, -1);
  2. echo $hip;
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #10 (permalink)  
Antiguo 24/02/2010, 11:17
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: Ayuda con select de eleccion multiple

tengo otro problema ahora, cuando manda el array por get o sea <select name="nombre_del_campo[]">

en el explorador le agrega a hipodromo%d%d=SIS por ej o algo asi y eso hace que no ande el paginador.
No hay forma de mandar el valor hipodromo sin [] y crear un array desde php o alguna manera para que no pase el array por el explorador.?
  #11 (permalink)  
Antiguo 24/02/2010, 13:34
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 1 mes
Puntos: 29
Respuesta: Ayuda con select de eleccion multiple

Mandarlo por post. De esa forma viaja oculto y no hay modificación posible.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #12 (permalink)  
Antiguo 24/02/2010, 13:54
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 5 meses
Puntos: 5
Respuesta: Ayuda con select de eleccion multiple

Cita:
Iniciado por CHuLoSoY Ver Mensaje
Mandarlo por post. De esa forma viaja oculto y no hay modificación posible.
Bueno, el viaje oculto y lo de la modificación es entre parentesis ¿no? jejejejejeejejejejejeje. De todas formas es otro tema q tratar
  #13 (permalink)  
Antiguo 24/02/2010, 14:00
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 1 mes
Puntos: 29
Respuesta: Ayuda con select de eleccion multiple

Ya me entiendes. Por get es muy fácil modificarlo
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #14 (permalink)  
Antiguo 24/02/2010, 18:32
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con select de eleccion multiple

@diegomel, en efecto el paginador tiene un problema cuando se trata de arrays. Hace un tiempo alguien publicó un fix para este problema, aunque nunca lo he probado o revisado personalmente podria ayudarte a solucionar tu problema.

http://www.diegodicamillo.com.ar/blo...ion=share-this


Etiquetas: eleccion, 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 05:00.