ando desarrollando un sistemita y debo registrar un array en la base de datos. Tengo un formulario (select) donde al seleccionar el cliente me carga los pedidos que están relacionados a ese cliente
Código PHP:
Ahora tengo la tabla donde pretendo almacenar el idPedido y el importePedido. Donde puede ser que se elija solo uno o todos los checkbox.Ver original
$idPedido = $resultados['idPedido']; $pedido = $resultados['descPedido']; $pedidos.=" <input type="checkbox" name="idPedido[]" value="$idPedido">".$pedido." <input type="text" name="importePedido[]" placeholder="Importe"> "; }
id - idPedido - numeroFactura - importePedido
1 - 1 - fac001 - 890
2 - 2 - fac001 - 1500
3 - 1 - fac002 - 5600
A lo mejor esta demás pero es así como pretendo almacenar mis datos en la BD
he tratado de hacerlo con un foreach de la siguiente forma
archivo-procesa.php
Código PHP:
Ver original
$pediFact = "insert into pediFact (idPedido,numeroFactura,importePedido)"; $pediFact.= " values"; $pediFact.= " ("; foreach ($_POST['idPedido'] as $datoId => $valorId) { $pediFact.= "".$valorId.","; } $pediFact.= "'".$_POST['numeroFactura']."',"; foreach ($_POST['importePedido'] as $datoImporte => $valorImporte) { $pediFact.= "".$valorImporte.""; } $pediFact.= ")"; if($ejecuta){ echo "Exito!!! :)"; }else{ }
pero al mandar el registro me sale el mensaje:
Error :( !!!Column count doesn't match value count at row 1
no se si lo que estoy haciendo es lo ideal pero es así como se me ocurrió.
Ojalá puedan orientarme un poco la verdad creo que ya estoy muy desorientado :(
GRACIAS!!!