1
我在codeigniter中有一个像这样的循环查询。但它以另一个值执行。不通过POST方法获得的值循环更新查询不起作用
$j = $_POST['hidden'];
$inv_id = $_POST['invoice_id'];
$sum = '';
for($i = 1; $i <= $j; $i++){
$wh_quantity1 = $_POST['quantity'.$i];
//print_r($wh_quantity1);
if($wh_quantity1 ==''){
$wh_quantity = 0;
}
else{
$wh_quantity = $wh_quantity1;
}
$query = "UPDATE tb_warehouse_stocks SET wh_product_qty = wh_product_qty - $wh_quantity WHERE invoice_id = '$inv_id'";
$this->db->query($query);
$sum += $wh_quantity;
}
为什么它是这样的。它总是比POST值的值更新
什么是'wh_product_qty'值? –
它在数据库表中。我需要通过从其中减去$ wh_quantity来更新它 –
此查询容易受到SQL注入的影响。消毒您的输入或使用准备好的语句来防止发生可怕的事情。即使用户没有意外(或者他的猫在键盘上)的意外输入也可能会通过此更新查询完全破坏您的数据。 –