我希望在交易完成后减少库存产品,我尝试使用foreach数据,但库存没有正确减少
CONTROLLER:
for ($i=0; $i < $count ; $i++) {
//SAVE DETAIL PENJUALAN
$data[] = array(
'nonota' => $this->input->post('nonota',TRUE),
'id_brg' => $this->input->post('kd_brg',TRUE)[$i],
'nama_brg' => $this->input->post('nama',TRUE)[$i],
'jml_brg' => $this->input->post('jml',TRUE)[$i],
'harga_brg' => $this->input->post('harga',TRUE)[$i],
);
//DELETE CART
$cart[] = array(
'rowid' => $this->input->post('rowid',TRUE)[$i],
'qty' => 0
);
$update[] = array(
'id' => $this->input->post('kd_brg',TRUE)[$i],
'stok' => 'stok' - $this->input->post('jml',TRUE)[$i]
);
$this->M_penjualan->updatestock($update,'tbl_barang');
}
模型
function updatestock($update) {
$this->db->update_batch('tbl_barang',$update,'id');
}
答案 0 :(得分:0)
1.Maybe产品ID与您从迭代中获得的产品ID不同。
2.看看这一行:
'stok' => 'stok' - $this->input->post('jml',TRUE)[$i]
您更改了字符串的值,因为&#39; stok&#39;是一个字符串。如果您要$stok - $this->input...
,那将是另一回事。当然,如果股票代表某个数字。
3.我也会首先尝试使用简单更新进行更新。 $this->db->set('stok', 'stok-'.$stok, false);
- 模型函数中的某个位置。