笨::删除复选框中的多个记录(Codeigniter:: deleting multiple rec

2019-11-03 11:01发布

我似乎无法找到什么是错我的代码。 我希望能够删除已经在表中被检查的记录。

这是我的看法:

       <table id="table" name="table" class="table table-bordered table-condensed table-striped table-primary table-vertical-center checkboxs">
              <thead>
                <tr>
                  <th style="width: 1%;" class="uniformjs"><input type="checkbox" /></th>
                  <th class="center">Item Category</th>
                  <th class="center" style="width: 90px;">Actions</th>
                </tr>
              </thead>
              <?php foreach($categorycontent->result() as $row): ?>
                <tr>
                  <th style="width: 1%;" class="uniformjs"><input type="checkbox" name="delete[]" value="<?php echo $row->id; ?>"/></th>
                  <td class="center"><?php echo $row->category_name; ?></td>
                  <td class="center">
                    <a href="#" class="btn-action glyphicons pencil btn-success" title="Edit" onClick="popedit('<?php echo $row->id; ?>', '<?php echo base_url(); ?>category/update_category/', 'category')"><i></i></a>
                    </td>
                </tr>
              <?php endforeach; ?>
            </table>

<script type="text/javascript">
  $(function()
  {

    popadd("#newcategory", "<?php echo base_url(); ?>category/create_category/", 'category');
    popdeletechecked("#deletecategory", "Deleting this record/s will delete all linked information.</br>Are you sure you want to delete it?",  "<?php echo base_url(); ?>category/remove_category/");
  });
</script>

我的AJAX功能,这是所谓的观点:

 function popdeletechecked(buttonid, msg, url) { $(buttonid).click(function(){ bootbox.confirm(msg,'No', 'Yes', function(result) { if(result) { $.ajax({ url : url, type : 'POST', success : function(){ window.location = url; } }); } else { $.gritter.add({// Doesn't work on page reload title: 'Deleting Cancelled!' }); } }); }); } 

我的控制器:

 public function remove_category() { $checked = $this->input->post('delete'); $this->category_model->delete_category($checked); redirect('category/read_category'); } 

模型:

 function delete_category($id) { $this->db->where('id', $id); $this->db->delete('tblitemcategories'); } 

有没有通过萤火虫返回的错误。 我不知道什么是错的,我已经试过在此基础上在这里回答了在堆栈中的其他用户的其他问题,改变了我的代码,但我仍然无法正常工作。 任何帮助深表感谢。 我是很新,笨和PHP。 再次感谢提前!

Answer 1:

您应该使用foreach循环删除。 在Controller

public function remove_category()
{

    $checked = $this->input->post('delete');
    foreach($checked as $val){
        $this->category_model->delete_category($val);
    }
    redirect('category/read_category');

}


文章来源: Codeigniter:: deleting multiple records in checkbox