如何检查更新复选框?

时间:2018-03-28 02:20:52

标签: php codeigniter

编辑复选框时出现问题。 编辑时,复选框不会被扯掉。 我正在使用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 ?>">&nbsp;&nbsp;<?php echo $data->category_name ?>
          </div>
       <?php } ?>

如何检查?

enter image description here enter image description here

我刚刚更新了我的qustion。 它总是只显示1个复选框,但我有更多类别。 (对不起,我的英语不好)

2 个答案:

答案 0 :(得分:0)

尝试将复选框输入更改为:

<input <?php echo $data->idcategory == $a['idcategory'] ? 'checked' : '' ?> type="checkbox" name="category[]" value="<?php echo $data->idcategory ?>">&nbsp;&nbsp;<?php echo $data->category_name ?>

答案 1 :(得分:0)

解决。我只是在我的视图中将foreach添加到输入标记内

SELECT W_Date, TID, sum(Value) FROM W
GROUP BY W_Date, TID