有人可以帮我弄清楚为什么我插入数据库时只能在数组元素上得到第一个字符。
我的数据来自复选框,然后在提交时,数据如下所示:
array ( 0 => 'Water Sealed', 1 => 'Open Pit', 2 => 'None', ) //$toilet_arr
这是我的代码:
if (count($toilet_arr)) {
foreach($toilet_arr as $row):
$data = array("hof_id"=>$last_id,"toilet_type"=>$row['toiletType']);
$this->db->insert('toilet_tbl',$data);
endforeach;
}
答案 0 :(得分:2)
在您的数组中,foreach循环应如下图所示
Node.js
如果问题仍然存在,则应该按原样插入值,并检查数据库中Node.js
列的长度。您需要为$toilet_arr = array ( 0 => 'Water Sealed', 1 => 'Open Pit', 2 => 'None' );
if (count($toilet_arr)) {
foreach($toilet_arr as $row) {
$data = array("hof_id"=>$last_id,"toilet_type"=>$row);
$this->db->insert('toilet_tbl',$data);
}
}
列设置toilet_type
答案 1 :(得分:0)
您的hof_id=>$last_id
是固定的。如果它是数据库中的主键或唯一键,则每次迭代都需要递增。