推车控制器
public function order()
{
$cartContentString = serialize($this->cart->contents());
$data = unserialize($cartContentString);
$this->Product_Model->add_order($data);
}
产品模型
public function add_order($data)
{
$insert =$this->db->insert('cart',$data);
return $insert;
redirect('products');
}
您的代码存在许多问题。
最明显的是这一点;
return $insert; // Nothing will be executed after this line
redirect('products');
返回语句之后将不执行任何操作。它将把DB插入的值返回给调用add_order()
的对象(在本例中为cart控制器(,而不执行redirect('products')
。
但在第一种方法order()
中,我不知道为什么要将数据serialize
放在一行上,将数据unserialize
放在下一行上——你只会得到以前的数据。
$this->Product_Model->add_order($this->cart->contents());
将具有与整个第一种方法相同的效果。