繁体   English   中英

Codeigniter从表行中获取值以进行编辑或删除

[英]Codeigniter get value from table row for edit or delete

我正在从MySQL表中检索数据并通过<?php foreach ?> loop显示在HTML表中,如下所示。

在Codeigniter中显示来自MySQL的HTML表中的数据

现在,我想通过按表格的“编辑”或“删除”按钮来编辑/删除上述HTML表格中特定行的数据。 我的MySQL表主键是branch_code

我知道如何在Codeigniter中更新/删除MySQL表中的数据,但我不知道如何从表行中检索数据。 我无法尝试,因为我不知道如何启动它。

我发现了类似的问题

  1. 使用codeigniter从html表中获取值
  2. PHP-CodeIgniter:如何获取要由Javascript删除的相应html表行值

No#1它被编写为将Collect all this data in an array and "send" it to your PHP via an Ajax POST request. -----好的,但是我该怎么做?

你能帮我么 ?

可能是我的问题重复了,但是我没有从这些原始文件中得到任何答案,或者我说我无法继续进行此过程。

先感谢您。

更新:

No#2我得到了以下...

$(document).on('click', '#deleteRow', function() {
  var obj = $(this).parent().parent();
  var companyId = obj.attr('branch_code');
  obj.remove();
});

我知道我应该为<tr>添加唯一属性。

现在我如何将变量中的值传递给model以便我可以更新我的MySQL表( $this->db->where('branch_code', $branch_code); )?

我通常这样做的方法是在渲染html表时为每个<tr>创建一个唯一的ID,因此您将执行以下操作:

<?php foreach ( $table->result() as $row): ?>
    <tr id="branch_<?= $row->branch_code ?>">
        <td>Whatever you want here</td>
        <td><a href="javascript:deleteBranch(<?= $row->branch_code; ?>)"></a></td>
    </tr>
<?php endforeach; ?>

然后你可以做一个AJAX调用来删除并用它获取那个id。

<script>
function deleteBranch(id) {
    $.post('controller_url', {"branch_code" : id }, function(data){
       //Your controller method would echo a 1 for success
       if (data == 1) {
           $("#branch_" + id).fadeOut();
           //show some kind of message
       }
    });
}
</script>

因此,从控制器开始,您现在可以拥有一个$this->input->post("branch_code") ,您可以引用它来删除该分支。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM