【发布时间】:2019-06-24 03:30:00
【问题描述】:
我是 Codeigniter 的新手,我无法理解我在更新数据库中的数据的代码中做错了什么。我非常感谢您的意见,因为我一直在绞尽脑汁试图找出问题所在。谢谢!
这是我的控制器:
public function edit(){
$slug=basename($_SERVER['REQUEST_URI']);
$data['news_item']=$this->news_model->get_news($slug);
$id=$data['news_item']['id'];
$this->load->helper('form');
$this->load->library('form_validation');
$data['title'] = 'Edit a news item';
$this->form_validation->set_rules('title', 'Title', 'required');
$this->form_validation->set_rules('text', 'Text', 'required');
if ($this->form_validation->run() === FALSE)
{
$this->load->view('templates/header', $data);
$this->load->view('news/edit');
$this->load->view('templates/footer');
}
else{
$data = array(
'title' => $this->input->post('title'),
'text' => $this->input->post('text')
);
$this->news_model->edit_news($id,$data);
$this->load->view('templates/header', $data);
$this->load->view('news/success');
$this->load->view('templates/footer');
}
}
这些是我的模型,一个用于获取表格行,一个用于更新(显然是 xD):
public function get_news($slug= FALSE){
if($slug === FALSE){
$query=$this->db->get('news');
return $query->result_array();
}
$query=$this->db->get_where('news', array ('slug' => $slug));
return $query->row_array();
}
public function edit_news($id,$data){
$this->db->where('id',$id);
$this->db->update('news',$data);
return;
}
我已经调试(如果你可以这么称呼它)控制器和模型,并通过打印或回显它们检查所有重要的值,并且这些都是按顺序排列的。
我认为我的表格或任何东西都没有错。在调用实际更新之前,一切似乎都运行良好(
$this->db->where('id',$id);
$this->db->update('news',$data);
)。
我什至不记得我在这个 xD 上尝试了什么提前感谢任何输入!
【问题讨论】:
标签: php sql sql-update codeigniter-3 insert-update