在Codeigniter中更新购物车时遇到的问题

时间:2019-03-23 14:58:19

标签: php codeigniter-3 shopping-cart

我正在为在线书店开发购物车。我可以轻松地更新购物车而无任何条件。

每当用户更新数量时,我都希望该数量等于或小于我数据库中的数量。所以我在这里放个条件。

这是我在控制器中的更新购物车功能:

public function update_cart()
{
    $contents = $this->input->post();

    foreach ($contents as $content) 
    {
        $info = array(

        'rowid'=> $content['rowid'],
        'qty' => $content['qty']

        );
        if($content['qty'] < '0')
        {
            $this->session->set_flashdata('error', '*Quantity can not be less than 0 or negative value.');
        }
        else
        {
            $this->cart->update($info);
        }

    }
        redirect('cart');
}

这种情况还可以。

但是只要我将else if(){}条件用于检查用户给出的数量是否小于或等于我在数据库中的数量,就会发生问题。然后,这将不起作用或无法进行更新。

这是我的代码,如果满足以下条件,则使用其他代码:

public function update_cart()
{

    $this->load->model('admin_model');
    $books = $this->admin_model->get_book_detail($id);         

    $contents = $this->input->post();

    foreach ($contents as $content) 
    {
        $info = array(

        'rowid'=> $content['rowid'],
        'qty' => $content['qty']

        );
        if($content['qty'] < '0')
        {
            $this->session->set_flashdata('error', '*Quantity can not be less than 0 or negative value.');
        }
       else if($content['qty'] > $books->quantity)
       {
            $this->session->set_flashdata('error', '*This much quantity is not in stock.');
       }

        else
        {
            $this->cart->update($info);
        }

    }
        redirect('cart');
}

我的状况有什么问题?特别是在其他if()条件下!

0 个答案:

没有答案