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

[已解决] 购物车里面有10个项目,如何批量提交到数据库保存?

[复制链接]
发表于 2011-7-19 09:16:40 | 显示全部楼层 |阅读模式
购物车里面有10个项目,现在需要保存到数据库,最后要生成订单到后台查看,如何设计这个订单数据库表,如何把多个购物车项目批量添加!
请高手给出实际可行的操作例子,而不是一概即全的概括性语句!在这里感谢万分!
发表于 2011-7-19 10:38:42 | 显示全部楼层
订单表和商品表一对多,一个订单有多个商品。
订单表:
ID、订单号、顾客姓名、联系方式、配送地址
商品表:
ID、订单ID、商品名称、商品价格、商品数量
添加的时候先添加一条订单返回mysql_insert_id()做为关联。
发表于 2011-7-19 10:40:07 | 显示全部楼层
本帖最后由 jeongee 于 2011-7-19 10:40 编辑

循环insert
 楼主| 发表于 2011-7-19 10:50:12 | 显示全部楼层
本帖最后由 xiaomomo 于 2011-7-19 11:28 编辑
jeongee 发表于 2011-7-19 10:40
循环insert

以手册的案例来说明一下:



$data = array(
               array(
                       'id'      => 'sku_123ABC',
                       'qty'     => 1,
                       'price'   => 39.95,
                       'name'    => 'T-Shirt',
                       'options' => array('Size' => 'L', 'Color' => 'Red')
                    ),
               array(
                       'id'      => 'sku_567ZYX',
                       'qty'     => 1,
                       'price'   => 9.95,
                       'name'    => 'Coffee Mug'
                    ),
               array(
                       'id'      => 'sku_965QRS',
                       'qty'     => 1,
                       'price'   => 29.95,
                       'name'    => 'Shot Glass'
                    )
            );

$this->db->insert($data);//插入数据库  这个如何实现插入呢?



采用for循环


for($i=0;$i<count($data);$i++){


$this->db->in($data[$i]);//$data[$i]['options']


}


如果options不是数组则可以顺利添加进数据库,问题是购物车options也是数组 array,如何处理这个options?



发表于 2011-7-19 11:44:44 | 显示全部楼层
可以把数组serialize一下嘛
 楼主| 发表于 2011-7-19 12:35:45 | 显示全部楼层
jeongee 发表于 2011-7-19 11:44
可以把数组serialize一下嘛

serialize这个方法真好用,问题解决了,多多的感谢
 楼主| 发表于 2011-7-19 13:07:52 | 显示全部楼层
longjianghu 发表于 2011-7-19 10:38
订单表和商品表一对多,一个订单有多个商品。
订单表:
ID、订单号、顾客姓名、联系方式、配送地址

谢谢你!呵呵
发表于 2011-7-19 13:17:40 | 显示全部楼层
xiaomomo 发表于 2011-7-19 13:07
谢谢你!呵呵

不必客气,哈哈

本版积分规则