Foros del Web » Programando para Internet » PHP »

Guardar datos de select multiples en bd

Estas en el tema de Guardar datos de select multiples en bd en el foro de PHP en Foros del Web. Hola amigos tengo un formulario y varios select multiples que según la opción abren otro. El punto es que en el último select se muestran ...
  #1 (permalink)  
Antiguo 12/04/2009, 16:32
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Pregunta Guardar datos de select multiples en bd

Hola amigos tengo un formulario y varios select multiples que según la opción abren otro. El punto es que en el último select se muestran las tallas según la selección (si es bebé, niño, mujer, hombre) y según el producto (si es ropa, zapatos, etc.

El problema es que no se como guardar esta opción cuando las persona selecciona varias tallas, pues no puedo ponerle al select el nombre con [] porque no lo toma.

Al recibirlo lo hago así: $talla = $_POST['talla'];

y para guardarlo hago esto:


for ($i=0;$i<count($talla);$i++)
{
mysql_query("INSERT INTO tallas (talla) VALUES (".$talla[$i].") WHERE id_prod='$id_prod'");
}

PERO NO FUNCIONA....

Les pongo aqui el código javascript para que por favor me orienten:

var tallitas = new Array()
tallitas[1] = ["elige subcategoría...","Ropa"]
tallitas[2] = ["elige subcategoría...","Ropa","Zapatos"]
tallitas[3] = ["elige subcategoría...","Blusas y Franelas","Pantalones","Conjuntos","Trajes de Baño","Panties","Brassier","Zapatos"]
tallitas[4] = ["elige subcategoría...","Camisas y Franelas","Pantalones","Ropa Interior","Zapatos"]

var tallas = new Array()
tallas[1] = new Array()
tallas[1][1] = ["elige talla","0-3M","3-6M","6-9M","9-12M","12-24M"]

tallas[2] = new Array()
tallas[2][1] = ["elige talla","2","3","4","5","6","7","8","9","10","11"," 12","13","14","15","16"]
tallas[2][2] = ["elige talla","17","18","19","20","21","22","23","24","25 ","26","27","28","29","30","31","32","33"]

tallas[3] = new Array()
tallas[3][1] = ["elige talla","SS","S","M","L","XL"]
tallas[3][2] = ["elige talla","26","28","30","32","34","36","38","40"]
tallas[3][3] = ["elige talla","SS","S","M","L","XL"]
tallas[3][4] = ["elige talla","SS","S","M","L","XL"]
tallas[3][5] = ["elige talla","SS","S","M","L","XL"]
tallas[3][6] = ["elige talla","30A","30B","32A","32B","34A","36A","36B"," 38A","38B","40A","40B"]
tallas[3][7] = ["elige talla","34","35","36","37","38","39","40","41","42 ","43","44","45"]

tallas[4] = new Array()
tallas[4][1] = ["elige talla","S","M","L","XL","2XL"]
tallas[4][2] = ["elige talla","26","28","30","32","34","36","38","40","42 "]
tallas[4][3] = ["elige talla","S","M","L","XL","2XL"]
tallas[4][4] = ["elige talla","36","37","38","39","40","41","42","43","44 ","45","46"]

function ponTallas(formu)
{ var laTallon = formu.tallon.selectedIndex
formu.tallita.length = tallitas[laTallon].length
for (i=0; i<formu.tallita.length; i++)
{ formu.tallita.options[i].text = tallitas[laTallon][i]
}
}
function ponTalla(formu)
{ var laTallon = formu.tallon.selectedIndex
var laTallita = formu.tallita.selectedIndex
formu.talla.length = tallas[laTallon][laTallita].length
for (i=0; i<formu.talla.length; i++)
{ formu.talla.options[i].text = tallas[laTallon][laTallita][i]
}
}
  #2 (permalink)  
Antiguo 13/04/2009, 10:15
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Antes de hacer cualquier cosa, verifica lo que estas recibiendo en POST y asi sabras como debes guardar cada valor:

Código php:
Ver original
  1. echo '<pre>';
  2. var_dump($_POST);
  3. echo '</pre>';
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 13/04/2009, 10:55
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años
Puntos: 7
Respuesta: Guardar datos de select multiples en bd

creo que los datos se reciben
Cita:
$talla="talla1, talla2, talla3"
si es asi como los recibe podrias utilizar explode
asi por ej.
Código PHP:
$A_tallas=explode(",",$_POST["talla"]);
//y luego recorrer el array $A_tallas, serviria para una o varias tallas 
espero te sriva de algo
__________________
Me junto con los que Saben, Queriendo Saber.
  #4 (permalink)  
Antiguo 15/04/2009, 19:15
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Hola gracias por los consejos, pero no se como resolverlo.


Al aplicar lo sugerido por Triby:

echo '<pre>';var_dump($_POST);echo '</pre>';

me di cuenta que solo me trae la última talla seleccionada:

["talla"]=>
string(1) "5"

cómo puedo hacer para que traiga todas las tallas que el usuario selecciona???

gracias
  #5 (permalink)  
Antiguo 15/04/2009, 19:31
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Muestra todo el codigo de tu formulario (PHP, HTML, Javascript) para ver si encontramos el problema.
__________________
- León, Guanajuato
- GV-Foto
  #6 (permalink)  
Antiguo 15/04/2009, 20:42
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Este es la pagina donde está el form con el javascript:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title></title>
<script language="JavaScript" type="text/JavaScript">
<!--
var categoria = new Array()
categoria[1] = ["elige subcategoría...","Bebé","Niña","Niño","Mujer","Hom bre"]

var producto = new Array()
producto[1] = new Array()
producto[1][1] = ["elige item","Vestidos","Conjuntos","Monitos","Pantalones ","Franelas","Zapatos","Otros "]
producto[1][2] = ["elige item","Vestidos","Conjuntos","Monos","Pantalones", "Faldas","Franelas","Trajes de Baño","Ropa Interior","Zapatos"]
producto[1][3] = ["elige item","Conjuntos","Monos","Pantalones","Shorts y Bermudas","Camisas","Franelas","Trajes de Baño","Ropa Interior","Zapatos"]
producto[1][4] = ["elige item","Vestidos","Blusas y Franelas","Pantalones y Short","Chaquetas","Pijamas","Ropa Interior","Trajes de Baño","Zapatos"]
producto[1][5] = ["elige item","Franelas","Camisas","Pantalones","Chaquetas y Sweaters","Short y Bermudas","Ropa Interior","Zapatos"]

function ponCategorias(formu)
{ var elTipo = formu.tipo.selectedIndex
formu.categorias.length = categoria[elTipo].length
for (i=0; i<formu.categorias.length; i++)
{ formu.categorias.options[i].text = categoria[elTipo][i]
}
}

function ponProducto(formu)
{ var elTipo = formu.tipo.selectedIndex
var laCategoria = formu.categorias.selectedIndex
formu.producto.length = producto[elTipo][laCategoria].length
for (i=0; i<formu.producto.length; i++)
{ formu.producto.options[i].text = producto[elTipo][laCategoria][i]
}
}

var tallitas = new Array()
tallitas[1] = ["elige subcategoría...","Ropa"]
tallitas[2] = ["elige subcategoría...","Ropa","Zapatos"]
tallitas[3] = ["elige subcategoría...","Blusas y Franelas","Pantalones","Conjuntos","Trajes de Baño","Panties","Brassier","Zapatos"]
tallitas[4] = ["elige subcategoría...","Camisas y Franelas","Pantalones","Ropa Interior","Zapatos"]

var tallas = new Array()
tallas[1] = new Array()
tallas[1][1] = ["elige talla","0-3M","3-6M","6-9M","9-12M","12-24M"]

tallas[2] = new Array()
tallas[2][1] = ["elige talla","2","3","4","5","6","7","8","9","10","11"," 12","13","14","15","16"]
tallas[2][2] = ["elige talla","17","18","19","20","21","22","23","24","25 ","26","27","28","29","30","31","32","33"]

tallas[3] = new Array()
tallas[3][1] = ["elige talla","SS","S","M","L","XL"]
tallas[3][2] = ["elige talla","26","28","30","32","34","36","38","40"]
tallas[3][3] = ["elige talla","SS","S","M","L","XL"]
tallas[3][4] = ["elige talla","SS","S","M","L","XL"]
tallas[3][5] = ["elige talla","SS","S","M","L","XL"]
tallas[3][6] = ["elige talla","30A","30B","32A","32B","34A","36A","36B"," 38A","38B","40A","40B"]
tallas[3][7] = ["elige talla","34","35","36","37","38","39","40","41","42 ","43","44","45"]

tallas[4] = new Array()
tallas[4][1] = ["elige talla","S","M","L","XL","2XL"]
tallas[4][2] = ["elige talla","26","28","30","32","34","36","38","40","42 "]
tallas[4][3] = ["elige talla","S","M","L","XL","2XL"]
tallas[4][4] = ["elige talla","36","37","38","39","40","41","42","43","44 ","45","46"]

function ponTallas(formu)
{ var laTallon = formu.tallon.selectedIndex
formu.tallita.length = tallitas[laTallon].length
for (i=0; i<formu.tallita.length; i++)
{ formu.tallita.options[i].text = tallitas[laTallon][i]
}
}
function ponTalla(formu)
{ var laTallon = formu.tallon.selectedIndex
var laTallita = formu.tallita.selectedIndex
formu.talla.length = tallas[laTallon][laTallita].length
for (i=0; i<formu.talla.length; i++)
{ formu.talla.options[i].text = tallas[laTallon][laTallita][i]
}
}

</SCRIPT>
</head>
<body>
<FORM action="guardar.php" method='post' enctype="multipart/form-data" name="formu" id="formu">
<table width="586" border="0" cellspacing="2" cellpadding="2">
<tr bgcolor="#0066CC">
<th colspan="10" scope="row"><span class="Estilo23">CARGAR PRODUCTOS </span></th>
</tr>
<tr>
<th bgcolor="#66CCFF" class="Estilo10" scope="row"><div align="justify" class="Estilo27">Fecha:</div></th>
<td colspan="9"><input name="fecha" readonly="true" type="text" id="fecha" value="<?php echo date('Y-m-d H:i:s');?>">
</td>
</tr>
<tr>
<th width="140" bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Categor&iacute;a:</div></th>
<td colspan="9"><select name="tipo" onChange="ponCategorias(this.form)">
<option>elige categor&iacute;a...</option>
<option>Ropa</option>
</select></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Subcategor&iacute;a:</div></th>
<td colspan="9"><select name="categorias" id="categorias" onChange="ponProducto(this.form)">
<option></option>
</select></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Item:</div></th>
<td colspan="9"><select name="producto">
<option></option>
</select></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo27"><span class="Estilo26">Nombre Producto: </span></div></th>
<td colspan="9">
<div align="justify">
<input name="nombre_prod" type="text" id="nombre_prod" size="60">
<br>
(M&aacute;ximo 60 caracteres) </div></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Cantidad:</div></th>
<td colspan="9"> <input name="ctdad" type="text" id="ctdad" size="5"></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Categor&iacute;a Talla :</div></th>
<td colspan="9">
<div align="justify">
<select name="tallon" id="tallon" onChange="ponTallas(this.form)">
<option>elige categor&iacute;a...</option>
<option selected>Beb&eacute;</option>
<option>Ni&ntilde;os</option>
<option>Mujer</option>
<option>Hombre</option>
</select>
</div> <div align="center">
</div> <div align="center">
</div> <div align="center"></div> <div align="center">
</div> <div align="center"></div> <div align="center"></div> <div align="center">
</div></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Subcategor&iacute;a Talla: </div></th>
<td colspan="9"><select name="tallita" id="select4" onChange="ponTalla(this.form)">
</select></td>
</tr>
<tr>
<th bgcolor="#66CCFF" scope="row"><div align="justify" class="Estilo10">Talla:</div></th>
<td colspan="9"><select name="talla" size="2" multiple>
</select></td>
</tr>
<tr bgcolor="#0066CC">
<th colspan="10" scope="row"><div align="center"></div><div align="center">
<input name="atras" type="button" id="atras" value="Atr&aacute;s" onClick="history.back();">
-
<input type="submit" name="Submit" value="Enviar">
-
<input name="Borrar" type="reset" id="Borrar" value="Borrar">
</div></th>
</tr>
</table>
</form>
</body>
</html>

Y este es el que recibe (guardar.php):

<?
session_start();
$_SESSION['x'] = $x;
// incluye los archivos de función para esta aplicación
require_once("funciones.php");
$fecha = $_POST['fecha'];
$tipo = $_POST['tipo'];
$categorias = $_POST['categorias'];
$producto = $_POST['producto'];
$nombre_prod = $_POST['nombre_prod'];
$ctdad = $_POST['ctdad'];
$tallon = $_POST['tallon'];
$tallita = $_POST['tallita'];
$talla = $_POST['talla'];

$conexion = db_connect();
if (!$conexion)
return 0;

$sql= "INSERT INTO articulos (fecha, tipo, categorias, producto, nombre_producto, ctdad, tallon, tallita, talla) " .
"VALUES ('$fecha', '$tipo', '$categorias', '$producto', '$nombre_producto', '$ctdad', '$tallon', '$tallita', '$talla')";
$res = mysql_query($sql) or die ( "Error MySQL dice: " . mysql_error() );

$consultar = mysql_query("SELECT cod_articulo FROM articulos WHERE nombre_producto='$nombre_producto'");
while ($registro = mysql_fetch_array($consultar)) {
$cod_articulo = $registro["cod_articulo"];

}
for ($i=0;$i<count($talla);$i++)
{
mysql_query("INSERT INTO talla (talla) VALUES (".$talla[$i].") WHERE nombre_producto='$nombre_producto'");
}
?>

Gracias...
  #7 (permalink)  
Antiguo 16/04/2009, 12:52
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Código html:
Ver original
  1. <!-- Cambia el select: -->
  2. <select name="talla" size="2" multiple></select>
  3.  
  4. <!-- Por esto: -->
  5. <select name="talla[]" size="2" multiple="multiple"></select>

El nombre del campo con los corchetes hara que funcione como matriz (array) en lugar de cadena (string).
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 16/04/2009, 13:44
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Gracias Triby, pero...

No me lo reconoce, pues choca con la funcion javascript:

function ponTalla(formu)
{ var laTallon = formu.tallon.selectedIndex
var laTallita = formu.tallita.selectedIndex
formu.talla.length = tallas[laTallon][laTallita].length
for (i=0; i<formu.talla.length; i++)
{ formu.talla.options[i].text = tallas[laTallon][laTallita][i]
}
}

Lo probé agregandole los corchetes a talla y también sin corchetes y no lo reconoce.

Qué hago?
  #9 (permalink)  
Antiguo 16/04/2009, 15:01
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Ok, podrias probar actualizando las opciones por ID:

Código html:
Ver original
  1. <!-- En el Javascript -->
  2. <script type="text/javascript">
  3. function ponTalla(formu) {
  4.     var laTallon = formu.tallon.selectedIndex;
  5.     var laTallita = formu.tallita.selectedIndex;
  6.     // Obtienes el select por medio de su ID
  7.     talla = document.GetElementById('talla');
  8.     talla.lenght = tallas[laTallon][laTallita].length;
  9.     for (i=0; i<talla.lenght; i++) {
  10.        talla.options[i].text = tallas[laTallon][laTallita][i];
  11.    }
  12. }
  13.  
  14. <!-- En el formulario agreas ID al select -->
  15. <select name="talla[]" id="talla" size="2" multiple="multiple"></select>
__________________
- León, Guanajuato
- GV-Foto
  #10 (permalink)  
Antiguo 16/04/2009, 17:01
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

hola Triby, gracias nuevamente. Lo puse tal cual me indicaste pero no muestra los datos del select talla.

que estará sucediendo??? Es algo que parece fácil pero no lo es.

Me duele la cabeza de darle la vuelta.

?????
  #11 (permalink)  
Antiguo 16/04/2009, 18:10
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Tal vez generando cada option por medio del constructor correspondiente:

Código javascript:
Ver original
  1. function ponTalla(formu) {
  2.     var laTallon = formu.tallon.selectedIndex;
  3.     var laTallita = formu.tallita.selectedIndex;
  4.     // Obtienes el select por medio de su ID
  5.     talla = document.GetElementById('talla');
  6.     // Eliminamos todos los elementos actuales, para garantizar que no habra problemas
  7.     talla.length = 0;
  8.  
  9.     for (i=0; i<talla.lenght; i++) {
  10.         agregar = tallas[laTallon][laTallita][i];
  11.         talla.options[i] = new Option(agregar, agregar);
  12.     }
  13. }

Al parecer, en este punto, el problema es mas de Javascript que PHP y, de cualquier forma, seria conveniente saber el error que estas recibiendo en el navegador para buscar la solucion.

Si usas IExplorer, en la barra de estado, abajo a la izquierda veras un icono amarillo, le das doble click y te aparecera una ventana con informacion del error, es posible que tengas que hacer click al boton "Detalles" para ver completa la causa del error; si son varios errores, entonces tendras que hacer click en los botones "Anterior" y/o "Siguiente" para verlos todos.

Si usas Firefox, en Menu - Herramientas - "Consola de errores" puedes ver los errores y, los de la ultima pagina vista, aparecen hasta abajo.

Toma nota de esos errores y agregalos en tu siguiente respuesta, para saber lo que esta pasando.
__________________
- León, Guanajuato
- GV-Foto
  #12 (permalink)  
Antiguo 16/04/2009, 19:30
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

el único error que me da es:

No se admite el atributo onChange de la etiqueta SELECT.
Netscape Navigator 7.0

línea 319 <select name="tallon" id="tallon" onChange ="ponTallas(this.form)">

también línea 334

<select name="tallita" id="tallita" onChange ="ponTalla(this.form)">

pero mis pruebas son en explorer 6.0

Creo que no debería afectar...

Tú que piensas???
  #13 (permalink)  
Antiguo 16/04/2009, 19:49
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Hola, logré hacerlo poniendo la función javacript inicial. Ahora si me pasa las tallas a guardar.php:

["talla"]=>
array(3) {
[0]=>
string(1) "2"
[1]=>
string(1) "3"
[2]=>
string(1) "4"
}

sin embargo, me da este error:

Error MySQL dice: Unknown column 'Array' in 'field list'

y no me guarda en la tabla articulos y por ende no puede guardar en la tabla talla.
  #14 (permalink)  
Antiguo 16/04/2009, 20:03
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Ya pude guardar en la tabla articulos. EL problema está al guardar en la tabla talla. Así lo tengo:

$consultar = mysql_query("SELECT cod_articulo FROM articulos WHERE nombre_producto='$nombre_producto'");
while ($registro = mysql_fetch_array($consultar)) {
$cod_articulo = $registro["cod_articulo"];

}
for ($i=0;$i<count($talla);$i++)
{
mysql_query("INSERT INTO talla (talla) VALUES (".$talla[$i].") WHERE cod_articulo ='$cod_articulo'");
}

a lo mejor está malo lo que puse en VALUES (".$talla[$i].").

No lo sé...

Solo me falta esto para concluir este hilo.

Les agradezco su ayuda.
  #15 (permalink)  
Antiguo 16/04/2009, 20:09
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

onChange debe ser sin mayusculas: onchange y no debe haber problema.

Código php:
Ver original
  1. $sql= "INSERT INTO articulos (fecha, tipo, categorias, producto, nombre_producto, ctdad, tallon, tallita, talla) " .
  2. "VALUES ('$fecha', '$tipo', '$categorias', '$producto', '$nombre_producto', '$ctdad', '$tallon', '$tallita', '$talla')";
  3. $res = mysql_query($sql) or die ( "Error MySQL dice: " . mysql_error() );

Como vas a almacenar las tallas en articulo?, logicamente no puede ser una matriz (array).

Código php:
Ver original
  1. for ($i=0;$i<count($talla);$i++) {
  2.     mysql_query("INSERT INTO talla (talla) VALUES (".$talla[$i].") WHERE nombre_producto='$nombre_producto'");
  3. }

Esa consulta esta mal, porque en un INSERT no puedes incluir una clausula WHERE.

Y no encuentro en cual de las consultas estas recibiendo el error, aparentemente proporcionas bien las listas de campos.
__________________
- León, Guanajuato
- GV-Foto
  #16 (permalink)  
Antiguo 16/04/2009, 20:19
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Arregle el código así:

for ($i=0;$i<count($talla);$i++)
{
mysql_query("INSERT INTO talla (talla) VALUES (".$talla[$i].") ");
}

y en donde inserto articulos quite hace rato a la variable talla y ya me guarda esos datos, pero sigue sin guardarme en la tabla talla

Mi tabla talla tiene los siguientes campos:

cod_articulo y talla porque con el cod_articulo es que asocio a que artículo pertenece.

No se cómo guardar las tallas todavía.
  #17 (permalink)  
Antiguo 16/04/2009, 20:41
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

mysql_query("INSERT INTO talla (cod_articulo, talla) VALUES ('$cod_articulo', {$talla[$i]})");
__________________
- León, Guanajuato
- GV-Foto
  #18 (permalink)  
Antiguo 16/04/2009, 21:00
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

no me lo guarda Triby. Disculpa tantas molestias... Cómo hago para saber que guarda $talla[$i]???
  #19 (permalink)  
Antiguo 16/04/2009, 21:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Guardar datos de select multiples en bd

Antes de mysql_query:

echo "Codigo: $cod_articulo - Talla: {$talla[$i]}<br />";
__________________
- León, Guanajuato
- GV-Foto
  #20 (permalink)  
Antiguo 16/04/2009, 22:10
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

no me muestra nada y fuera del for si me muestra echo $cod_articulo;

???
  #21 (permalink)  
Antiguo 16/04/2009, 22:17
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar datos de select multiples en bd

Triby por fin encontré el error. Era que estaba pasando mal los datos en _POST. Lo hacia así:

$talla = $_POST['talla[]'];

y es así:

$talla = $_POST['talla'];

Mil gracias, que bueno contar contigo.
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 22:14.