2010-03-08 78 views
1

是否可以将价格值添加到Codeigniter购物车类的产品选件中。例如:T恤价格为10.00美元,但XXL尺寸为额外2.00美元。Codeigniter购物车类 - 产品选件的附加价格

$data = array(
      'id'  => 'abc', 
      'qty'  => 1, 
      'price' => 10.00, 
      'name' => 'T-Shirt', 
      'options' => array('Size' => 'XXL') // Where would you add $2.00 for XXL? 
     ); 

$this->cart->insert($data); 
+0

我实际上是面对这个明天:) +1 – 2010-03-09 10:08:35

回答

0

这就是为什么我们分开建立了自己的车和订单管理系统,从原因之一CI的原创之作。

更好的方法是扩展或重建CI的购物车类,以直接从数据库结果注入产品和选项。通过这种方式,您可以始终追踪价格的计算方式:从ericofsac的回答中,为什么它的价格为12而不是10,以及在销售时间多少。

您也可以轻松实现录音界面从购物车中的数据到您的订单,但这是另一个问题。

+0

谢谢!我不得不使用我对CI的购物车类的理解来构建我自己的基于会话的购物车系统。 – JonP 2010-03-09 18:12:56

+0

@JonP,请问我可以知道你自己的购物车代码吗? – 2015-12-02 03:24:15

1

从看车类,它看起来像做你的要求的唯一方法是将选项价格为传递给CodeIgniter的购物车类的价格。所以你会通过你在你的例子中提供的数组,其中$ data ['price']设置为12.00(10.00加上XXL的2.00)

我对CI的购物车类的理解是它只是提供购物车的基本会话处理信息。诸如具有自己定价的产品选项之类的东西需要在您自己的代码中构建。

0

是的,你应该“合并”产品与选择价格,并把包装的总价格,新的价格放入购物车。这可能是我能拿出如果你希望能够使用CI的唯一方法:■车的总金额等的预建功能