我正在使用php& mysql开发发票应用程序。 提交发票后我的问题我想减少数量行。我差不多完成了这段代码
HTML
<input type="text" name="qty[]" class="productQty"/>
<input type="text" name="product_id[]" class="productId" readonly/>
PHP
<?php
$result1 = mysql_query("SELECT * FROM items");
if (!$result1) {
die("Query to show fields from table failed");
}
$qty = $_POST["qty"];
$qtys = array_values($qty);
$id= $_POST["product_id"];
$ids = array_values($id);
foreach (array_combine($qtys, $ids) as $id => $qty) {
$show_id = $id;
$quantity = $qty;
echo "<p><b>" . $show_id . "</b></p>";
echo "<p><b>" . $quantity . "</b></p>";
/*
$stock_update = "Update items set Stock= stock - '$quantity' where ID='$show_id'";
if (mysqli_query($con, $stock_update)) {
echo "stock done";
} else {
echo "Error creating table: " . mysqli_error();
}
*/
}
?>
结果
1
BKK01
2
PEN01
但问题是数量值是否相等。现在的结果
1
将Pen01
无法显示第一项。
答案 0 :(得分:0)
更改:
foreach (array_combine($qtys, $ids) as $id => $qty) {
到:
foreach (array_combine($ids, $qtys) as $id => $qty) {
您的身份和数量不正确。而且,我猜你的id将是一个独特的,所以不会有任何问题
array array_combine ( array $keys , array $values )