为什么删除成功,但数据库没有更新删除?



我有一个这样的数据擦除代码结构:

控制器

public function menu_delete($id_menu)
{
$menu = $this->menu_model->detail_menu($id_menu);
$data = array ('id_menu'    => $menu->id_menu);
$this->menu_model->menu_delete($data);
$this->session->set_flashdata('msg', 'Data Berhasil Hapus');
redirect(base_url('superadmin/administrator/menu'),'refresh');
}

**型**

// Fungsi Detail (Edit) User Controler
public function detail_menu($id_menu) 
{
$this->db->select('*');
$this->db->from('menu_user');
$this->db->where('id_menu',$id_menu);  
$query = $this->db->get();
return $query->row(); // fungsi (row) untuk menampilkan single data
// return $query->result(); // fungsi (row) untuk menampilkan semua data
}

// Delete data
public function menu_delete($data)
{
$this->db->where('id_menu', $data['id_menu']);
$this->db->update('menu_user', $data);
}

视图

<button type="button" class="btn btn-sm btn-clean btn-icon btn-icon-md" data-toggle="modal" data-target="#Delete<?php echo $m['id_menu'] ?>"> <i class="la la-trash"></i></a></button></center>

<!--begin::Modal-->
<div class="modal fade" id="Delete<?php echo $m['id_menu'] ?>" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">HAPUS DATA INI SEKARANG ?</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
</button>
</div>
<div class="modal-body">
<h6 style="color: red">PERINGATAN PENTING !!!</h6>
<p><b>File yang sudah terhapus, tidak akan bisa dikembalikan lagi.</b><br> Klik <b style="color: blue">"Cancel" </b> untuk membatalkan.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-outline-dark" data-dismiss="modal">Cancel</button>
<a href="<?php echo base_url('superadmin/administrator/menu_delete/'.$m['id_menu']) ?>"><button type="button" class="btn btn-danger">Delete</button></a>
</div>
</div>
</div>
</div>

成功运行通知时,没有错误。 但不会删除或更新数据库。 肯尼亚怎么了?请帮忙

发生这种情况的原因是您正在更新记录而不是删除它。这就是你写delete query的方式(参考资料( -

public function menu_delete($data)
{
$this->db->where('id_menu', $data['id_menu']);
$this->db->delete('menu_user');
// Produces:
// DELETE FROM menu_user
// WHERE id_menu = $data['id_menu']
}

如果你只想将一个columnstatus0改为1,反之亦然,@Deepak辛格的答案应该可以做到。

看看它是否对你有帮助。

您的menu_delete方法似乎是这里的罪魁祸首。我不确定您的删除列名称是什么,但考虑到它被称为delete并且它是一个布尔值,这样的东西会起作用。

public function menu_delete($data)
{
$this->db->where('id_menu', $data['id_menu']);
$this->db->update('menu_user', array("delete" => 1));
}

基本上,您必须将要更新的数据传递给update方法。

据我所知,您正在更新数据,而不是删除。只需执行此操作即可从数据库中删除数据。

public function menu_delete($data)
{
$this->db->where('id_menu', $data);
$this->db->delete('menu_user');
}

相关内容

  • 没有找到相关文章

最新更新