PHP - Array para varios campo de texto

 
Vista:

Array para varios campo de texto

Publicado por Eclipse (34 intervenciones) el 01/03/2012 19:47:12
Hola, tengo un formulario dentro del cual lleva una tabla con 6 columnas y 15 filas, el objetivo es recoger los datos de un pedido la primera columna es cantidad, el usuario podra colocar de 1 a 15 cantidades dentro de las filas..

Ahora como puedo insertar estos datos para luego insertarlos a mi campo de la tabla cuyo campo es cantidad_recurso, pensé crear una array pero no me funciono :(

$cant1=$_POST["cant1"];
$cant2=$_POST["cant2"];
.
.
$cant14=$_POST["cant14"];
$cant15=$_POST["cant15"];

$cantidades[]=array($cant1,$cant2,$cant3,$cant4,$cant5,$cant6,$cant7,$cant8,$cant9,$cant10,$cant11,$cant12,$cant13,$cant14,$cant15);

luego mi consulta

$insertSQL="INSERT INTO material.pedido (id_pedido,cantidad)
VALUES (NULL,'".$cantidades[]."')";
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Array para varios campo de texto

Publicado por xve (6935 intervenciones) el 01/03/2012 20:30:50
Hola Eclipse, hasta donde yo se, no puedes guardar un array directamente en la base de datos...
Si los quieres guardar todos en un solo campo, te recomiendo guardar los valores separados por un carácter, para luego poder leerlo y ponerlo en un array... algo así:
1
2
$cantidades=$cant1."|".$cant2."|".$cant3."|".$cant4."|".$cant5."|".....;
INSERT INTO...

Luego, una vez recuperes el valor de la base de datos, podras pasar este valor a un array con explode()
1
$cantidades=explode("|",$row["CampoBaseDatos"]);

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Array para varios campo de texto

Publicado por Eclipse (34 intervenciones) el 02/03/2012 17:57:14
Muchísimas GRACIAS por el seguimiento xve. Investigando halle algo que me funciono, los input text los llame asi name="cant[ ]"

Luego $cants=$_POST['cant'];

Y ahora la consulta:

$sql="INSERT INTO pedido_detalle (cantidad) VALUES ";
for($i=0;$i<15;$i++) {
if (!empty($cants[$i]){
$sql.="('".$_POST["id_requisicion"]."','".$cants[$i]."'),";}
}
$sql=rtrim($sql,',');
echo "El resultado es".$sql;
$res = mysqli_query($mysqli, $sql) or die(mysqli_error($mysqli));
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar