无法添加到购物车类

时间:2013-09-27 16:49:57

标签: php codeigniter cart

我刚刚开始使用CodeIgniter(版本2.1.4)的购物车类,我一直在关注有助于解释它的教程。但由于某些原因,我无法成功地将一个简单的数组添加到购物车中。

以下是我对购物车类的实施:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Cart extends CI_Controller {

public function __construct() {
    parent:: __construct();
}

public function index() {
    $nav["navigation"] = $this->getCategory->getCategories();

    $this->load->view("header");
    $this->load->view("scripts"); 
    $this->load->view("nav", $nav);
    $this->load->view("cart");
    $this->load->view("footer");
}

function add() {
    $data = array(
        "id"        => "42",
        "name"      => "pants",
        "quantity"  => 1,
        "price"     => 19.99,
        "options"   => array("size" => "medium")
    );

    $this->cart->insert($data);
    var_dump($this->cart->contents()); //This should output the array!

}

function show() {

    $cart = $this->cart->contents();
    echo "<pre>" . print_r($cart) . "</pre>"; //Nothing here either!

}

function update() {

    $this->cart->update($data);
    redirect(base_url()."cart");

}

function total() {

    echo $this->cart->total();

}

function remove() {

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

}

function destroy() {

    $this->cart->destroy();

}

}

但是如果我去添加函数,var_dump只显示“array(0){}”。如果我导航到show函数,结果相同。

这是我的自动加载配置,显示我已自动加载购物车库已加载:

$autoload['libraries'] = array("database", "session", "cart");

$autoload['helper'] = array("html", "url", "form");

我知道这是一件非常简单明显的事情,我很想念,但是现在我只是感到困惑。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

quantity的数组键名称不正确。在数据中,您要将数量must be named作为qty插入,以便将数据保存到购物车中。

"qty"  => 1,