Php 根据Codeigniter中的结果将结果从模型传递到控制器
我想不出做这件事的最佳方法——我有一个将产品添加到购物车的模型Php 根据Codeigniter中的结果将结果从模型传递到控制器,php,codeigniter,Php,Codeigniter,我想不出做这件事的最佳方法——我有一个将产品添加到购物车的模型 $this->db->select('*'); $this->db->from('products'); $this->db->where('product_id',$pid); $query = $this->db->get(); $products = $query->result_array(); $stock = $products['0']['sto
$this->db->select('*');
$this->db->from('products');
$this->db->where('product_id',$pid);
$query = $this->db->get();
$products = $query->result_array();
$stock = $products['0']['stock'];
$quantity = 2;
$cart = $this->cart->contents();
$found = false;
foreach($cart as $items)
{
if($pid == $items['id'] ){
if ($items['qty'] + $quantity <= $stock){
$this->cart->update(array(
'rowid' => $items['rowid'],
'qty' => $items['qty'] + $quantity
));
$found = true;
$SEND MESSAGE SAYING ADDED TO CART
}
else {
$found = true;
$SEND MESSAGE SAYING NOT ENOUGH STOCK
}
}
}
if($found == false){
$data = array(
'id' => $products[0]['product_id'],
'name' => $products[0]['name'],
'qty' => $quantity,
'price' => $products[0]['price']
);
if ($quantity <= $stock)
{
$this->cart->insert($data);
}
else {
echo "Not enough stock";
}
}
return $this->cart->contents();
$this->db->select('*');
$this->db->from('products');
$this->db->where('product_id',$pid);
$query=$this->db->get();
$products=$query->result_array();
$stock=$products['0']['stock'];
$quantity=2;
$cart=$this->cart->contents();
$found=false;
foreach($cart作为$items)
{
如果($pid==$items['id'])){
如果($items['qty']+$quantity购物车->更新(数组)(
'rowid'=>$items['rowid'],
“数量”=>$items['qty']+$quantity
));
$found=true;
$SEND消息已添加到购物车
}
否则{
$found=true;
$发送消息说库存不足
}
}
}
如果($found==false){
$data=数组(
'id'=>$products[0]['product_id'],
'name'=>$products[0]['name'],
“数量”=>美元数量,
“价格”=>$products[0][“价格”]
);
如果($quantity cart->insert($data);
}
否则{
呼应“库存不足”;
}
}
返回$this->cart->contents();
向控制器返回消息以便向用户显示物品已添加/库存不足的最佳方式是什么
我已经读过,我可以使用“return”-但是因为我使用return$this->cart->contents();在函数的底部,我不知道该去哪里
我可能是完全错误地看待这个问题,但如果有人能告诉我处理这种情况的最佳方法,我将非常感激
C.试试这样的方法:
$data = array();
$data['cart'] = $this->cart->contents();
$data['msg'] = 'Your message here';
return $data;
在控制器中,根据需要取出元件,例如:
$return = $this->model->function(); //your model return here $return
$cart = $return['cart']; //cart contents
$msg = $return['msg']; //the message added from the model
太棒了,非常合适。非常感谢:-)很高兴能帮助…:D@CarlBembridge