문제점은 다음과 같습니다. 동시에 여러 항목을 테이블에 추가하려고합니다. 이것은 재고 시스템이며 구매 주문서에 따라 품목이 추가됩니다. 3 개의 테이블을 동시에 업데이트하고 싶습니다. 첫 번째 테이블은 송장 데이터와 관련이 있고 두 번째 테이블은받은 품목 세부 정보와 관련이 있습니다. 세 번째 테이블은 현재 주식과 관련됩니다.PHP for 루프에서 ON DUPLICATE UPDATE KEY를 사용할 수 있습니까
현재 재고 테이블에 추가하려는 품목이 이미있는 경우 업데이트해야하며 존재하지 않으면 현재 재고 테이블에 추가해야합니다. 동적으로 생성 된 텍스트 상자를 사용하여 테이블에 항목을 추가합니다. 그러나 for 루프에서 ON DUPLICATE UPDATE KEY
쿼리를 실행할 수 없습니다. 내 코드는 다음과 같습니다.
if (is_array($qty) && ($item)) {
for ($i = 0; $i < sizeof($qty); $i++) {
$query2 = "INSERT INTO received_items (po_id,invoice_number,item_name,qty)VALUES($id,'$invoice',$item[$i]',$qty[$i])";
$query3="INSERT INTO current_stock (item-name,Qty) VALUES('$item[$i]',$qty[$i]) ON DUPLICATE KEY UPDATE item-name='$item[$i]',qty=qty+$qty[$i]";
$result_1 = mysqli_query($conn, $query2);
$result_2 = mysqli_query($conn, $query3);
if (($result_1)&&($result_2)) {
echo '<script type="text/javascript">';
echo 'alert("Sucessfully Updated your Details");';
echo 'window.location = "../htdocs/dashbd.php";';
echo '</script>';
}else{
echo '<script type="text/javascript">';
echo 'alert("Failed to Update Your details.Try Again");';
echo 'window.location = "../htdocs/received_item.php";';
echo '</script>';
}
}
}
'current_stock' 테이블에 대한 KEY는 무엇입니까? – RiggsFolly
'SHOW CREATE TABLE current_stock'의 출력을 보여주세요 – RiggsFolly
항목 이름은 current_stock 테이블의 기본 키입니다 .... Item_name과 qty라는 두 개의 열만 있습니다. –