编辑复选框时出现问题。 编辑时,复选框不会被扯掉。 我正在使用codeigniter。
这是我的模特:
public function categories_post($id)
{
$this->db->select('categories.idcategory, categories.category_name');
$this->db->from('categories');
$this->db->join('categories_detail', 'categories_detail.idcategory = categories.idcategory', 'inner');
$this->db->join('posts', 'posts.idpost = categories_detail.idpost', 'inner');
$this->db->where('posts.idpost', $id);
return $this->db->get();
}
这是我的控制器:
public function edit($id='')
{
$data['post'] = $this->posts->getpostbyid('posts',$id);
$data['a'] = $this->posts->categories_post($id)->row_array();
$data['tags'] = $this->posts->tags_post($id);
$data['media'] = $this->datamedia->list_image();
$data['title']="Edit Pos";
$data['file']="posts/editpost";
$data['categories'] = $this->posts->getallcategories('categories');
$this->load->view('form_template',$data);
}
查看:
<?php
foreach ($categories as $data) { ?>
<div class="form-group">
<input <?php if($a['idcategory']){ echo 'checked'; } ?> type="checkbox" name="category[]" value="<?php echo $data->idcategory ?>"> <?php echo $data->category_name ?>
</div>
<?php } ?>
如何检查?
enter image description here enter image description here
我刚刚更新了我的qustion。 它总是只显示1个复选框,但我有更多类别。 (对不起,我的英语不好)
答案 0 :(得分:0)
尝试将复选框输入更改为:
<input <?php echo $data->idcategory == $a['idcategory'] ? 'checked' : '' ?> type="checkbox" name="category[]" value="<?php echo $data->idcategory ?>"> <?php echo $data->category_name ?>
答案 1 :(得分:0)
解决。我只是在我的视图中将foreach添加到输入标记内
SELECT W_Date, TID, sum(Value) FROM W
GROUP BY W_Date, TID