【发布时间】:2016-07-03 20:23:50
【问题描述】:
我需要帮助将关联数组存储到 codeigniter 中的数据库列中。
我有一个名为“vehicle[]”的输入字段,实际上这个字段由 8 个字段组成,例如品牌、型号、颜色等。
用户也可以使用“添加另一个”选项添加更多车辆,输入字段与车辆[]相同
这是我的 codeigniter 模型代码
public function vehicle($new){
$new = $this->input->post('vehicle');
$data = array(
'vehicle_number' => json_encode($new),
'make' => json_encode($new),
'color' => json_encode($new),
'color' => json_encode(model),
);
$this->db->insert('vehicles_tbl', $data);
这样所有数据都存储在数据库的一列中,我如何将每个值存储在数据库的相关列中。
My controller
$this->vehicle_model->vehicle($new);
【问题讨论】:
-
Codeigniter 文档没有介绍如何使用数据库吗?顺便提一句。你的代码没有意义。您在同一个数组中有两个名为
'color'的数组键。第二个会覆盖第一个,为什么在将数据保存到数据库之前“json_encode()”? -
在对 CI 处理 DB 查询的方式进行了更多研究之后,他们似乎没有使用准备好的语句,而是有自己的“查询绑定”实现,这足以让我们放弃该框架...或包含另一个安全的数据库库。
-
@Magnus Eriksson 我有 8 个输入字段(品牌、颜色、底盘、型号、发动机、编号、轮胎、电池)都被命名为车辆 [],默认情况下用户可以添加 1 辆车,如果他们有更多的车辆,可以使用添加功能来添加另一辆也具有相同字段的车辆的详细信息。我只想将这个数组的数据保存在各个列中
-
就像我说的,documentation 解释了如何插入数据。如果车辆是一个数组,只需将数据作为数组获取:
$data = array('model' => $new['model], ...and so on); -
谁能帮我解决这个问题
标签: php mysql arrays codeigniter