【发布时间】:2015-12-10 02:43:15
【问题描述】:
我正在尝试将复选框值插入到我的数据库中。我使用 implode 方法将其作为字符串插入。它成功插入了值。但是我获取复选框值“已选中”的条件不起作用..
<label>Some text</label>
<input type="checkbox" name="text[]" value="text1"
<?php echo set_checkbox('text', $row->Some_text)== 'text1' ? "checked" : "";?>>text1
<input type="checkbox" name="text[]" value="text2"
<?php echo set_checkbox('text', $row->Some_text)== 'text2' ? "checked" : "";?>>text2
<input type="checkbox" name="text[]" value="text3"
<?php echo set_checkbox('text', $row->Some_text)== 'text3' ? "checked" : "";?>>text3
<input type="checkbox" name="text[]" value="text4"
<?php echo set_checkbox('text', $row->Some_text)== 'text4' ? "checked" : "";?>>text4
我将模型编写为:
public function edit($id)
{
$sometext = $this->input->post('text');
$data=array(
'Some_text'=>json_encode(implode(",", $sometext)),
);
$this->db->set($data);
$this->db->where('User_id',$id);
$this->db->update('tbl_check');
$query = $this->db->get('tbl_check');
return $query->row();
}
编辑运行良好..
【问题讨论】:
-
这有点令人困惑,但是,您是否尝试过将 set_checkbox 和 == 'text' 包含在 () 中?像这样
echo (set_checkbox('text', $row->Some_text)== 'text1') ? "checked" : "";?> -
我猜你应该把所有东西都包起来:
echo ((set_checkbox('text', $row->Some_text)== 'text1') ? "checked" : "");?>
标签: php codeigniter checkbox checked