产品未添加到Codeigniter购物车中

阿米尔

我的Codeigniter购物车有问题。我已经创建了代码并进行了检查,但是每次添加相同的产品时,它只会更新该产品的所有信息,而不会添加新的信息。例如,两件确切的衬衫,但是大小或颜色不同。我在这里搜索解决方案,但尚未提出解决方案。

我的控制器代码

public function addToCart() {
$data = $this->input->post();

$id = $data['id'];
$qty = $data['qty']; 
$color = $data['color'];
$cart = $this->cart->contents();
$exists = false;
$rowid = '';

foreach($cart as $item):
    if($item['id'] == $id && $item['color'] == $color):
        $exists = true;
        $rowid = $item['rowid'];
        $qty = $item['qty'] + $qty;
    else:
        // if statement does not equal
    endif;
endforeach;

if($exists):
    $this->product_model->update_cart_item($rowid, $qty);
    redirect('dashboard');
else:
    $this->product_model->add_cart_item();
    redirect('dashboard');
endif;

 }

我的模型代码

public function update_cart_item($rowid, $qty){
    $data = array(
            'rowid' => $rowid,
            'qty' => $qty
    );

$this->cart->update($data);
}

public function add_cart_item(){
    $id = $this->input->post('id');
    $name = $this->input->post('name');
    $qty = $this->input->post('qty');
    $price = $this->input->post('price');
    $color = $this->input->post('color');
    $photo = $this->input->post('photo');
    $type = $this->input->post('type');
    $data = array(
            'id' => $id,
            'qty' => $qty,
            'price' => $price,
            'name' => $name,
            'color' => $color,
            'photo' => $photo,
            'type' => $type
    );

$this->cart->insert($data); 
}

现有产品的更新部分工作正常。例如,不相同的部分是其相同的产品但颜色不同。

托普卡

由于您要对每个产品进行处理,因此请尝试以下操作:

public function addToCart() {
    $data = $this->input->post();

    foreach($cart as $item):

        $id = $data['id'];
        $qty = $data['qty']; 
        $color = $data['color'];
        $cart = $this->cart->contents();
        $exists = false;
        $rowid = '';

        if($item['id'] == $id && $item['color'] == $color):
            $exists = true;
            $rowid = $item['rowid'];
            $qty = $item['qty'] + $qty;

            if($exists):
                $this->product_model->update_cart_item($rowid, $qty);
            else:
                $this->product_model->add_cart_item();

            endif;
        else:
            // if statement does not equal
        endif;
    endforeach;
    redirect('dashboard');
 }

您想$exists在检查任何下一个产品之前将其设置为false。毕竟,完成所有循环后,您只需要重定向到仪表板即可。希望它能工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WooCommerce从购物车中删除所有产品,并将当前产品添加到购物车

来自分类Dev

将项目添加到magento的购物车中

来自分类Dev

添加到购物车按钮未在购物车中添加产品

来自分类Dev

Prestashop:将定制产品添加到购物车

来自分类Dev

将产品添加到购物车WooCommerce?

来自分类Dev

在Woocommerce中隐藏添加到购物车消息

来自分类Dev

如果购物车中该产品的数量超过10,则禁用该产品添加到购物车按钮

来自分类Dev

以编程方式将可配置产品添加到magento中的购物车

来自分类Dev

将产品添加到Rails应用程序中的购物车时,找不到带有'id'=的产品

来自分类Dev

在添加到购物车中的特定产品之前,先清空购物车

来自分类Dev

替换WooCommerce中未登录用户的添加到购物车按钮

来自分类Dev

Laravel将具有相同产品的购物车按钮添加到+1数量的购物车中

来自分类Dev

根据WooCommerce单个产品中的重量替换添加到购物车按钮

来自分类Dev

Woocommerce:如果当前产品在购物车中,则将Body类添加到产品页面

来自分类Dev

检查客户是否购买了商品并将产品添加到WooCommerce中的购物车

来自分类Dev

添加产品时,WooCommerce将加售产品添加到购物车

来自分类Dev

WooCommerce从购物车中删除所有产品,并将当前产品添加到购物车

来自分类Dev

将项目添加到magento的购物车中

来自分类Dev

Woocommerce-添加到购物车缺货中

来自分类Dev

将产品添加到购物车中magento的来宾用户

来自分类Dev

添加到购物车按钮未在购物车中添加产品

来自分类Dev

Prestashop:将定制产品添加到购物车

来自分类Dev

将产品添加到购物车WooCommerce?

来自分类Dev

将项目添加到AngularJS的购物车中

来自分类Dev

如果购物车中该产品的数量超过10,则禁用该产品添加到购物车按钮

来自分类Dev

当 Woocommerce 中的可变产品缺货时隐藏添加到购物车块

来自分类Dev

localStorage 添加到购物车

来自分类Dev

无法添加到 reactjs 购物车中的项目

来自分类Dev

如何从 WooCommerce 中的相关产品中删除添加到购物车按钮?

Related 相关文章

  1. 1

    WooCommerce从购物车中删除所有产品,并将当前产品添加到购物车

  2. 2

    将项目添加到magento的购物车中

  3. 3

    添加到购物车按钮未在购物车中添加产品

  4. 4

    Prestashop:将定制产品添加到购物车

  5. 5

    将产品添加到购物车WooCommerce?

  6. 6

    在Woocommerce中隐藏添加到购物车消息

  7. 7

    如果购物车中该产品的数量超过10,则禁用该产品添加到购物车按钮

  8. 8

    以编程方式将可配置产品添加到magento中的购物车

  9. 9

    将产品添加到Rails应用程序中的购物车时,找不到带有'id'=的产品

  10. 10

    在添加到购物车中的特定产品之前,先清空购物车

  11. 11

    替换WooCommerce中未登录用户的添加到购物车按钮

  12. 12

    Laravel将具有相同产品的购物车按钮添加到+1数量的购物车中

  13. 13

    根据WooCommerce单个产品中的重量替换添加到购物车按钮

  14. 14

    Woocommerce:如果当前产品在购物车中,则将Body类添加到产品页面

  15. 15

    检查客户是否购买了商品并将产品添加到WooCommerce中的购物车

  16. 16

    添加产品时,WooCommerce将加售产品添加到购物车

  17. 17

    WooCommerce从购物车中删除所有产品,并将当前产品添加到购物车

  18. 18

    将项目添加到magento的购物车中

  19. 19

    Woocommerce-添加到购物车缺货中

  20. 20

    将产品添加到购物车中magento的来宾用户

  21. 21

    添加到购物车按钮未在购物车中添加产品

  22. 22

    Prestashop:将定制产品添加到购物车

  23. 23

    将产品添加到购物车WooCommerce?

  24. 24

    将项目添加到AngularJS的购物车中

  25. 25

    如果购物车中该产品的数量超过10,则禁用该产品添加到购物车按钮

  26. 26

    当 Woocommerce 中的可变产品缺货时隐藏添加到购物车块

  27. 27

    localStorage 添加到购物车

  28. 28

    无法添加到 reactjs 购物车中的项目

  29. 29

    如何从 WooCommerce 中的相关产品中删除添加到购物车按钮?

热门标签

归档