用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3679|回复: 6
收起左侧

[已解决] 关于cart类建立购物车

[复制链接]
发表于 2010-8-4 18:34:12 | 显示全部楼层 |阅读模式
$data = array(
               'id'      => 'sku_123ABC',
               'qty'     => '1',
               'price'   => '39.95',
               'name'    => 1,
            
            );

$this->cart->insert($data);
=================================================
A Database Error Occurred
Error Number: 1054

Unknown column 'session_id' in 'field list'

INSERT INTO `ci_sessions` (`session_id`, `ip_address`, `user_agent`, `last_activity`) VALUES ('eadf160aac5d1df298b65eb223f11fd0', '127.0.0.1', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)', 1280917987)

却插入的是session_id字段等....而不是qty...为什么
发表于 2010-8-4 21:46:39 | 显示全部楼层
你要先建立 Session 数据库,因为购物车需要 Session 存到数据库。
参考 http://codeigniter.org.cn/user_guide/libraries/cart.html

PS: 不能你有一个 Session Key 就建立一个数据库字段吧?你有100个key,难道要建立100字段?多思考,呵呵
发表于 2011-6-11 20:25:57 | 显示全部楼层
建立一个  MY_Cart.php  
application/libraries下

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

class MY_Cart extends CI_Cart {
    function __construct() {
        parent::CI_Cart();
        $this->product_name_rules = 'dD';  
    }
}  
复制代码
发表于 2011-8-27 14:38:54 | 显示全部楼层
INSERT INTO `ci_sessions` (`session_id`, `ip_address`, `user_agent`, `last_activity`) VALUES ('eadf160aac5d1df298b65eb223f11fd0', '127.0.0.1', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)', 1280917987)

这个是CI在你使用cart的时候,自动去插入数据库的。所以首先你要按照手册上session类上去建数据库表。而你的自定义数据,如下
$data = array(
               'id'      => 'sku_123ABC',
               'qty'     => '1',
               'price'   => '39.95',
               'name'    => 1,
            
            );
这些。CI会记录进user_data字段的。
发表于 2011-12-20 11:04:23 | 显示全部楼层
avinmo 发表于 2011-8-27 14:38
INSERT INTO `ci_sessions` (`session_id`, `ip_address`, `user_agent`, `last_activity`) VALUES ('eadf1 ...

不知道啊。不过我的好像user_data字段一直是空的哎。。。
发表于 2011-12-20 11:18:52 | 显示全部楼层
知道了,商品名称的问题。。。
发表于 2011-12-20 11:19:03 | 显示全部楼层
谢谢楼上的了。

本版积分规则