Hola, estoy programando una parte de un sitio, que consta de traspaso de articulos entre almacenes, en el que, el usuario de un almacen selecciona todos los articulos a traspasar y el almacen de destino... la cuestion es esta...
El checkbox para activar el input para seleccionar una cantidad se llama "Seleccionado", Su valor, es el ID del producto... Del input, El nombre es cantidad<ID>, ejemplo: cantidad3, cantidad4, etc...
A la hora de enviar los datos, no logro recibir todos los datos y de hecho me da el error de
Warning: Invalid argument supplied for foreach()
El codigo es el siguiente, alguien puede decirme que hago mal???
Código PHP:
<?php
if (isset($_POST['seleccionado'])) {
$origen=$_POST['origen'];
$destino=$_POST['destino'];
$seleccionado=$_POST['seleccionado'];
$select=count($seleccionado);
echo "<script>alert('$select');</script>"; //Lo uso para saber si me hace el conteo pero siempre me da a 1 por mas articulos que seleccione
$i=1;
foreach($select as $valor){
if($valor!=0){
while($i<=$select){
$cantidad=$_POST["cantidad$valor"];
$stockpropio=mysql_query("select stock_propio from rel_articulo_almacen where id_almacen=$origen and id_articulo=$valor");
$stockfinal=$stockpropio-$cantidad;
mysql_query("UPDATE rel_articulo_almacen SET stock_propio=$stockfinal where id_almacen=$origen and id_articulo=$valor");
$stockdestino=mysql_query("select stock_propio from rel_articulo_almacen where id_almacen=$destino and id_articulo=$valor");
$stockfinal=$stockdestino+$cantidad;
mysql_query("update rel_articulo_almacen set stock_propio=$stockfinal where id_almacen=$destino and id_articulo=$valor");
$afect=mysql_affected_rows();
if($afect==0){
mysql_query("insert into rel_articulo_almacen(stock_propio, id_almacen,id_articulo,aprestamo) values ('$stockfinal','$destino','$valor','0')");
}
$i++;
}
}
}
}
En ejecución se ve así: