我有一个项目表和一个表格。我尝试做的是获取商品和购物车的所有实例,然后我将它们放入循环中,这样每当商品的item_id与购物车的item_id匹配时,我就会减去购物车& #39;来自item' s number_of_units的item_quantity值。然后,结果用于更新项目的number_of_items。我的嵌套foreach循环似乎存在问题。
这是我控制器中的一项功能
public function checkout(){
$this->load->model('HomeModel');
$x['item'] = $this->HomeModel->displayAllItems();
$y['cart'] = $this->HomeModel->displayAllCartItems();
foreach($x['item'] as $item){
foreach($y['cart'] as $cart){
if(($item->item_id) == ($cart->item_id)){
$temp1 = $item->number_of_units;
$temp2 = $cart->item_quantity;
$temp = $temp1 - $temp2;
$z = array(
'number_of_units' => $temp,
);
$this->HomeModel->updateItem($z, $item->item_id);
}
}
}
}
这是我的一些模特功能:
public function displayAllCartItems()
{
$query = $this->db->select('*')->from('cart')->get();
return $query->result();
}
public function displayAllItems()
{
$query = $this->db->select('*')->from('item')->get();
return $query->result();
}
public function updateItem($data, $id)
{
$this->db->where('item_name', $id);
$query = $this->db->update('item', $data);
}