我收到此錯誤「陣」錯誤:未知列在「字段列表」(笨)
未知列在「字段列表」陣'
當插入複選框列表進入數據庫。當我做print_array我得到這個結果:
Array
(
[0] => Array
(
[user_id] => 3
[project_id] => 10
[project_type] => 5
[project_list] => Array
(
[0] => 17
[1] => 18
)
)
)
應該的project_list
值要插入到數據庫中的一個新行。
我的看法:<input type="checkbox" value="<?php echo $project_list['id']; ?>" name="project_list[]">
從數據庫填充。
我的控制器:$this->Project_module->createProject($_POST['project_list']);
我模塊
public function createProject($project_list){
if($project_list != null){
$data = array();
foreach($project_list as $project_list){
$data[] = array(
'user_id' => $this->getUserId(),
'project_id' => $this->getProjectId(),
'project_type' => $this->getProjectType(),
'project_list' => $this->getProjectList(),
);
}
$this->db->insert_batch('tblProject', $data);
if($this->db->affected_rows()){
return true;
} else {
return false;
}
}
}
編輯 我是編輯我的foreach這樣
foreach($project_list as $row){
$data = array(
'user_id' => $this->getUserId(),
'project_id' => $this->getProjectId(),
'project_type' => $this->getProjectType(),
'project_list' => $this->getProjectList(),
);
}
但是,我還是GETT同樣的錯誤。
在你的foreach只需添加'$ data'而不是'$ data []'並且改變你的foreach變量 – Nawin
@Nawin我改變了它,但仍然是同樣的錯誤。 –
$ this-> getProjectList()返回一個數組,並且您試圖將該數組作爲字段放入您的數據庫中。所以implode(',',$ this-> getProjectList())會解決它,但你可能想將它們保存在另一個表 – verhie