php - 无法从codeigniter中的数据库中删除数据
问题描述
我有一个关于codeigniter的项目。我想从数据库中删除数据。如果用户单击删除按钮,则应将其删除。
我的问题
我认为所有代码都在工作..但我认为id 没有进入我controller
没有错误,但数据也没有从数据库中删除
offerfetch.php(查看)
<td><a type="button" class="btn btn-danger" href="<?= base_url('admin/delarticles'); ?>/<?php echo $emp->offer_id; ?>">Delete</a></td>
<td><a type="button" class="btn btn-info" href="<?= base_url('admin/editoffer'); ?>/<?php echo $emp->offer_id; ?>">update</a></td>
admin.php(控制器)
public function delarticles()
{
$id=$this->input->get('offer_id');
$this->load->model('adminloginmodel');
if($this->adminloginmodel->del($id))
{
$this->session->set_flashdata('insertsuccess','Delete Successfully');
$this->session->set_flashdata('msg_class','alert-success');
}
else
{
$this->session->set_flashdata('insertsuccess','Please try again..not delete');
$this->session->set_flashdata('msg_class','alert-danger');
}
return redirect('admin/viewoffers');
}
为了调试 我用过
print_r($id);
exit();
在控制器中的行之后,$id=$this->input->get('offer_id');
但我没有得到任何 id,空白页即将出现。
adminloginmodel.php(模型)
public function del($id)
{
return $this->db->delete('offers',['offer_id'=>$id]);
}
解决方案
您正在通过锚元素的 url 发送 id:
<a type="button" class="btn btn-danger" href="<?= base_url('admin/delarticles'); ?>/<?php echo $emp->offer_id; ?>">Delete</a>
这应该产生类似的东西:
href="your_app/admin/delarticles/1"
您正在尝试读取来自表单的输入字段的 id,这里不是这种情况,您可以从 url 直接在函数中访问它,例如
public function delarticles($id=0){
if ($id){
$this->load->model('adminloginmodel');
if($this->adminloginmodel->del($id))
{
$this->session->set_flashdata('insertsuccess','Delete Successfully');
$this->session->set_flashdata('msg_class','alert-success');
}
else
{
$this->session->set_flashdata('insertsuccess','Please try again..not delete');
$this->session->set_flashdata('msg_class','alert-danger');
}
return redirect('admin/viewoffers');
}else{
// your code in case there is no value for $id, aka $id=0
}
}
恢复:
如果您在此表单中使用表单和提交按钮,您会从表单的输入字段创建一个 $_POST 数组(例如
<input type="text" name="offer_id">
,您可以在控制器中使用$id=$this->input->get('offer_id')
;使用锚元素并在 URL 中发送参数
推荐阅读
- html - HTML 电子邮件:充当电话号码链接的数字?
- java - 无法解析 WebClient Builder 中的 NullPointerException | 弹簧靴
- ruby-on-rails - 传递给 _path 路由助手时出现在 params[:format] 中的参数
- r - 将月份名称赋予R中的数字变量
- jenkins - Jenkins Build 不会被 bit bucket web hook 触发
- python - 更新 Pandas DataFrame 特定范围
- javascript - NodeJS中String的串联问题:响应中发送的数据为空
- jmeter - 如何实现对smpp协议的性能测试
- vue-component - Vue.js 组件中的文件阅读器进度
- lambda - 如何在集合和数组列表上使用 lambda 表达式