PHP CI $this->cart->insert($data) 获取空值



我在脚本中获得堆栈。我使用了IGNITER VER。3.1.10。我在控制器中使用购物车库

在这里我的控制器

    public function add_to_cart()
        {
            $idit=$this->input->post('id_item');
            $product=$this->Salesmodel->get_item($idit);
            $i=$product->row_array();
            $data = array(
                   'id'             => $i['id_item'],
                   'name'           => $i['name_item'],
                   'main_price'     => $i['main_price'],
                   'sell_price'     => $i['sell_price'],
                );
            $this->cart->insert($data);
            $rows = count($this->cart->contents());    // I want to find out rows count and result is null
            echo $i['id_item'];                     //get value, not null
            echo $rows;                                // get '0'
        }

model.php

function get_item($idit)
{
   $rslt=$this->db->query("SELECT * FROM tb_item where id_item='$idit'");
   return $rslt;
}

但是在该脚本中,我总是得到购物车的无效行数。我必须在config.php中添加此脚本:

$config['sess_use_database'] = TRUE;

我还创建了一个带有名称的新表格

ci_session

但这返回相同的结果,我的购物车总是具有空行计数和空数据。请在我制作的脚本中帮助我。

预先感谢

为了正确保存到购物车中,这4个数组索引是必需的
id-项目标识符。
qty-项目数量。
price-商品价格。
name-项目名称。

和第5个索引是options,您可以存储所有需要的其他属性(虽然应该是一个数组)。

因此,您可以像这样修改$data数组:

        $data = array(
               'id'             => $i['id_item'],
               'qty'            => 1, // here I just manually set it to 1
               'name'           => $i['name_item'],
               'price'          => $i['main_price'], // here I changed 'main_price' index to 'price'
               'options'        => array('sell_price' => $i['sell_price']) // moved the 'sell_price' array here
            );

最新更新