Foros del Web » Programando para Internet » PHP »

Insertar datos de un campo multiple a la BD y enviar por e-mail

Estas en el tema de Insertar datos de un campo multiple a la BD y enviar por e-mail en el foro de PHP en Foros del Web. Hola a todos!!!! Sé que es una pregunta fácil pero realmente no sé como insertar datos de un campo de seleccion multiple: Código: <select name="aficiones" ...
  #1 (permalink)  
Antiguo 08/03/2004, 12:00
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2
Insertar datos de un campo multiple a la BD y enviar por e-mail

Hola a todos!!!!

Sé que es una pregunta fácil pero realmente no sé como insertar datos de un campo de seleccion multiple:
Código:
<select name="aficiones" size="5" multiple id="aficiones">
        <option value="Navegar en Internet">Navegar en internet</option>
        <option value="Leer">Leer</option>
        <option value="Escuchar Música">Escuchar M&uacute;sica</option>
        <option value="Escribir poemas">Escribir poemas</option>
        <option value="Probar este Formulario">Probar este Formulario</option>
</select>
Tanto para enviar por e-mail o para insertar en una base de datos, quiero saber como se envía estos tipos de campos....

Agradezco la mano que me pudierais hechar!!!!!!
__________________
Ahora T4X es
WinGFX!!!!!
  #2 (permalink)  
Antiguo 08/03/2004, 12:01
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2
Por cierto, es enviarlo multiple????
__________________
Ahora T4X es
WinGFX!!!!!
  #3 (permalink)  
Antiguo 08/03/2004, 12:40
Abs
 
Fecha de Ingreso: enero-2003
Mensajes: 216
Antigüedad: 21 años, 2 meses
Puntos: 0
Hola,

En tu INSERT, quedaría de esta forma:

mysql_query("INSERT INTO tutabla(loscampos,aficiones) values('$loscampos','$aficiones')");

$aficiones es el nombre de la variable del <select>, según el option que haya escogido el usuario, se guardará así.

Saludos
  #4 (permalink)  
Antiguo 08/03/2004, 12:43
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2
Ok, hasta ahi entendi, de verdad cuando envio un campo multiple me envia los datos seleccionados en el dicho select????
__________________
Ahora T4X es
WinGFX!!!!!
  #5 (permalink)  
Antiguo 08/03/2004, 15:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si a tu select multiple el nombre lo defines como:

name="aficiones[]" viajarán en esa variabel que ahora será un array tus opciones seleccionadas .. sino sólo una de ellas.

Para php será "aficiones" un array que debe leer como tal (bucles foreach() .. etc ..)

Un saludo,

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 08/03/2004, 15:49
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2

No entendí ese paso, podrías explicarmelo claramente, quedé loco ahora si!!!!!
__________________
Ahora T4X es
WinGFX!!!!!
  #7 (permalink)  
Antiguo 09/03/2004, 05:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te comentaba que para que PHP entienda que los datos que le envias en un select multiple (o série de checbox, y otros elementos de formulario) los interprete como arrays que contendrán las opciones seleccionadas, el nombre de esa variable ha de ser tipo array: nose[] o nose[indice]

Ejemplo:

Código PHP:
<form action="nose.php" method="POST">
<
select name="aficiones[]" size="5" multiple id="aficiones">
        <
option value="Navegar en Internet">Navegar en 
internet
</option>
        <
option value="Leer">Leer</option>
        <
option value="Escuchar Música">Escuchar Música</option>
        <
option value="Escribir poemas">Escribir poemas</option>
        <
option value="Probar este Formulario">Probar este Formulario</option>
</
select>
Tu botón submit ...
</
form
Si lo haces así .. las opcines que selecciones viajarán en esa variable como un array y por ende así debes procesarlas en tu script php (código PHP).

Por ejemplo ..

nose.php
Código PHP:
foreach ($_POST['aficiones'] as $aficion){
echo 
$aficion."<br>";

Así las recibiras en tu script de proceso .. lo que hagas con ellas ya es otra cosa. No sé si pretendes guardar estas opcines en un campo de tu tabla (separados por comas u otro separador) o bien vas a crear registros en alguna otra tabla (tantos como opcines se seleccinen) o no sé .. decide que es lo que vas hacer con esos datos una vez que los recibas.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 09/03/2004 a las 05:54
  #8 (permalink)  
Antiguo 09/03/2004, 11:08
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2


Gracias por esa respuesta, ahora si quedé claro como el Agua :D
__________________
Ahora T4X es
WinGFX!!!!!
  #9 (permalink)  
Antiguo 09/03/2004, 17:59
T4X
 
Fecha de Ingreso: enero-2004
Ubicación: myT-Base
Mensajes: 254
Antigüedad: 20 años, 3 meses
Puntos: 2
Bueno, si me aclaro dudas, ahora cuando quiero insertar en la BD los multiples campos que debo hacer???

Que consulta debo seguir????
__________________
Ahora T4X es
WinGFX!!!!!
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 06:14.