0
我有一個名爲'spec'的JSON字段,並且在JSON格式中有大約10個其他項目。我只需要更新數量。更新數據庫中的一個JSON字段 - CodeIgniter
儘管當我嘗試這種方法時,它會刪除其中的所有內容並只設置spec = quantity。
繼承人我到目前爲止。
$pass_coupon_id = $this->pass_coupon_id();
$coupon_array = $this->db->query("SELECT * FROM coupon WHERE coupon_id='$pass_coupon_id'")->result_array();
foreach ($coupon_array as $row) {
$spec = json_decode($row['spec'], true);
}
$quantity_new = $spec['quantity'] - 1;
$data2 = array(
'spec' => json_encode(array(
'quantity'=> $quantity_new
)));
$this->db->where('coupon_id', $pass_coupon_id);
$this->db->update('coupon', $data2);
你是不是寫回到數組,你基本上覆蓋它。 –
您可以嘗試更新sql而不是選擇sql –