下面是我的代码插入选中的值从复选框到数据库。我打算更新股票从另一个表后,我点击提交,但它存储了一个不正确的输入。例如:如果我在结帐页面上输入了5个数量,而不是减少库存数量,它会输入我输入的负值:-5...这里似乎有什么问题?
<?php
include 'config.php';
$invoice = $_POST['invoiceid'];
if(isset($_POST['submit'])){
$checked_array=$_POST['prod'];
foreach ($_POST['prodname'] as $key => $value) {
if(in_array($_POST['prodname'][$key], $checked_array)){
$product=$_POST['prodname'][$key];
$price= $_POST['price'][$key];
$qty= $_POST['qty'][$key];
$amtpaid = $price * $qty;
$query = "INSERT INTO purchasedproducts SET invoice_id='$invoice', productname='$product', quantity='$qty', amtpaid='$amtpaid'";
$run = mysqli_query($link,$query);
//select product_stock table
$stock_table = mysqli_query($link, "SELECT * FROM product_stock");
$stock = $row['qty_stock'] - $qty;
$update_que = "UPDATE product_stock SET qty_stock='$stock' WHERE product_name='$product'";
$run_update = mysqli_query($link,$update_que);
}
}
}
header('Location: sample.php');
?>
1条答案
按热度按时间nvbavucw1#
您的查询正在用您的“输入”更新列值。您想要的是这样的东西。
这是将值设置为其原始值加上输入。