【发布时间】:2014-05-07 16:01:00
【问题描述】:
我正在使用 Codeigniter 构建一个电子商务网站,允许用户注册、购买产品并跟踪订单。
我在网站周围的几个地方使用以下内容,主要是在用户提交订单时:
$this->db->insert_id();
基本上,当用户提交订单时,它会将订单添加到一个表中,然后,在同一段代码中(紧接插入查询之后),使用创建时创建的 ID 将每个订单项添加到另一个表中订单被插入到第一个表中。
我的问题是:在以下内容中,$this->db->insert_id(); 是什么?做:
1) 它是否获得刚刚插入(并且仅来自)插入查询的 ID 才运行? 2) 不管它来自什么查询,它是否从数据库中的最新条目中获取最后插入的 ID?
基本上我是想避免订单混淆,例如,如果多个客户同时提交订单,我不希望将一个客户的订单商品添加到错误的订单中。
我认为答案是 1,没有问题,但我想确定一下。
谢谢!
【问题讨论】:
-
我不是 CodeIgniter 用户,但我 100% 确信它可以按预期工作。它只能是底层 PHP 扩展中等效函数的包装器。
标签: php mysql codeigniter