buenos dias, hace tiempo pregunte si se podía hacer un formulario donde podía agregar inputs para guardar varios registros a la vez con lo que me pasan un ejemplo de este y lo utilice, lo modifique acorde a mis campos de mi base de datos y quedo de la siguiente manera:
Código PHP:
Ver original<div id="stylized" class="myform">
<form id="form" name="form" method="POST" action="insertar_registro.php">
<div id="material_pedido"></div>
<label>Clave del Empleado:</label><select id="empleado" name="idemp[]" style="width:50px;"></select><span style="float:left;padding:8px 0px 8px 8px;">
Nombre del Empleado:</span><select id="no_empl"></select><span style="float:left;padding:8px 0px 8px 8px;">
Area del Solicitante:</span><select id="area" style="width:150px;" /><span style="float:left;padding:8px 0px 8px 8px;">
Fecha de la Solicitud:</span>
<?php $fecha= date("Y-m-d"); ?><!--=== sirve para obtener la fecha del equipo automaticamente ===-->
<input type="date" name='fecha_sol' required value="<?php echo $fecha; ?>" readonly style="width:119px;"/><span style="float:left;padding:8px 0px 8px 8px;"></span>
<h1>Articulo a pedir</h1>
<p>Puede añadir mas de 1 pedido si asi lo decea</p>
<div id="div_1">
<label>Clave producto:</label><input type="text" name="clave[]" id="clave1" style="width:50px;" value="<?php echo $row ['id_producto']; ?>"/><span style="float:left;padding:8px 0px 8px 8px;">
Producto:</span><input type="text" name="producto[]" style="width:90px;" value="<?php echo $row ['nombre_produc']; ?>"/><span style="float:left;padding:8px 0px 8px 8px;">
Marca:</span><input type="text" name="marca[]" style="width: 80px;" value="<?php echo $row ['marca']; ?>"/><span style="float:left;padding:8px 0px 8px 8px;">
Cantidad:</span><input type="number" name="cantidad[]" style="width:30px;" /><input class="bt_plus" id="1" type="button" value="+" /><div class="error_form"></div>
</div>
<br>
<br>
<button type="submit" name="submit" class="boton">Enviar</button>
</form>
</div>
en este codigo solamente quiero guardar los campos "clave empleado", "clave producto", "producto", "marca" y "cantidad", pero cuando agrego mas, solamente me guarda los primeros input y no los otros 2 o 3 que agrego para guardar mas de 1 a la vez el codigo que me mostraron es el siguiente
Código PHP:
Ver original<?php
include("php/conexion.php");
if (isset($_POST['clave'])) { $clave = $_POST['clave'];
}else{
$clave="";
}
if (isset($_POST['idemp'])) { $idemp = $_POST['idemp'];
}else{
$idemp ="";
}
if (isset($_POST['producto'])) { $producto = $_POST['producto'];
}else{
$producto="";
}
if (isset($_POST['marca'])) { $marca =$_POST['marca'];
}else{
$marca="";
}
if (isset($_POST['cantidad'])) { $cantidad =$_POST['cantidad'];
}else{
$cantidad="";
}
if (isset($_POST['area_sol'])) { $area_sol = $_POST['area_sol'];
}else{
$area_sol="";
}
if (isset($_POST['fecha_sol'])) { $fecha_sol = $_POST['fecha_sol'];
}else{
$fecha_sol="";
}
/*esta parte es la me mostraron, pero me guarda solamente 1 registro como ya comente lineas arriba*/
for($i=0; $i < count($clave); $i++) { $idemp = $_POST['idemp'][$i];
$clave = $_POST['clave'][$i];
$producto = $_POST['producto'][$i];
$marca = $_POST['marca'][$i];
$cantidad = $_POST['cantidad'][$i];
$fecha_sol = $_POST['fecha_sol'][$i];
$query1 ="INSERT INTO detalle(id_pedidos, id_producto, producto, marca, cantidad, fecha_solicitud)
VALUES('$idemp', '$clave', '$producto', '$marca', '$cantidad', '$fecha_sol')";
}
?>
mi pregunta es porque solamente me guarda solo 1 registro y no los demas que agrego? espero puedan ayudarme ya que no se mucho de php