在数据表复选框codeigniter中插入数据

时间:2017-01-19 05:45:39

标签: php mysql codeigniter datatable datatables

我正在为我的学校科目做一个项目。我对如何在复选框中检查数据感到困惑,当我按下提交按钮时,它将循环插入到我的数据库中。我设法显示/警告我的数据表中正在检查的数据。

这是我的控制器填充我的数据表:

public function getalldocs() {
    $listdocs = $this->Admin_model->getdoctors();
    $data = array();
    foreach ($listdocs as $docs) {
        $row = array();  
        $row[] = $docs->user_fname;
        $row[] = $docs->user_mname;
        $row[] = $docs->user_lname;
        $row[] = '<input name="user_id[]" value="'.$docs->user_id.'" type="checkbox">';

        $data[] = $row;
    }
    $output = array(   
        "data" => $data,
    );
    echo json_encode($output);
}

我认为这是:

<div class="dataTable_wrapper">
    <table id="dataTables-docs"  class="table table-striped table-bordered table-hover dataTable dtr-inline" role="grid" style="width: 100%;" width="100%" aria-describedby="dataTables-material">
        <thead>
            <tr>
                <th>First Name</th>
                <th>Middle Name</th>
                <th>Last Name</th>
                <th></th>
            </tr>
        </thead>
        <tbody></tbody>
    </table>
</div><!-- dataTable_wrapper -->

这是我的javascript来回显我的数据表中选中的复选框:

function show_docs() {
    $("#dataTables-docs").dataTable().fnDestroy();
    table =  $('#dataTables-docs').DataTable({
        "ajax": {
            "url": "<?php echo site_url('admin_controls/getalldocs')?>",
            "type": "POST",
        },
        responsive: true,
        className: 'select-checkbox',
        'bInfo': false,
        'paging': false
    });
}

$('#dataTables-docs tbody').on('click', 'input[type="checkbox"]', function(e){
    var user_id = $(this).val();
    alert(user_id);
});

现在,我希望所有被检查的内容都插入我的数据库中,如下所示: (本身份识别码,selectedfromcheckbox); 这是我在数据库表中的截图: enter image description here

1 个答案:

答案 0 :(得分:2)

使用另一个ajax插入数据

$('#dataTables-docs tbody').on('click', 'input[type="checkbox"]', function(e){
    var user_id = $(this).val();
    $.ajax({
          type:"post",
          data: {user_id:user_id},
         "url": "<?php echo site_url('admin_controls/saveData')?>",
          success:function(data){
             $("#info").html(data);
          }

      });
});

//在控制器中的代码下面

public function saveData()
{
// code to save in controler
}