하나의 테이블에 여러 필드를 삽입하려는 경우 문제가 있습니다. 각 테이블에 0 값만 삽입합니다.PHP에서 foreach 루프를 사용하여 여러 필드 삽입
여기 내 양식이다 :
<table class=table_position>
<?php
for($num_request=$_POST['number_item'];$num_request>0;$num_request--){
echo"<tr>
<th><input type='number' step='1' min='1' name='quantity[$num_request]' id='quantity$num_request' onkeyup='multiply$num_request();' style='text-align:center;width:96.5px;height:25;' required></th>
<th><input type='text' name='unit[$num_request]' align='middle' style='text-align:center;width:65px;height:25;' required></th>
<th><input type='text' name='description[$num_request]' align='middle' style='text-align:center;width:343px;height:25;' required></th>
<th><input type='text' name='stocknum[$num_request]' align='middle' style='text-align:center;width:99px;height:25;' required></th>
<th><input type='number' min='1' name='unitcost[$num_request]' id='unitcost$num_request' onkeyup='multiply$num_request(),add() ' align='middle' style='text-align:center;width:100px;height:25;' required></th>
<th><input type='text' name='totalcost[$num_request]' id='product$num_request' class='add' align='middle' style='text-align:center;width:164px;height:25;' readonly></th>
</tr>";
}
?>
</table>
그리고 여기에 제출 코드는`
$query="SELECT * FROM request WHERE username='$usernames' ORDER BY id DESC LIMIT 1";
$result=mysqli_query($con,$query);
$row = mysqli_fetch_array($result);
$num_row=mysqli_num_rows($result);
$request_id=$row['id'];
$i = 0;
foreach ($_POST as $val) {
$quantity=$_POST['quantity'][$i];
$unit=$_POST['unit'][$i];
$item_description=$_POST['description'][$i];
$unit_cost=$_POST['unitcost'][$i];
$total_cost=$_POST['totalcost'][$i];
include("dbc1.php");
$sql="INSERT INTO request_items (request_id,quantity,unit,item_description,unit_cost,total_cost)
VALUES ('$request_id','$quantity','$unit','$item_description','$unit_cost','$total_cost')";
$i++;
if(!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
}
쿼리는 데이터베이스에 삽입하지만, 각 테이블에 0 값을 삽입합니다.
누군가 나를 도울 수 있습니까?
시작에서와 같이, 예를 들어 저점
$_POST['unit']
을 걷고있을 것' –은 입력 그 이름을 무엇입니까? 입력 한 이름이 같지 않은 경우 foreach가 필요합니까? –