[英]Codeigniter Update Data In Database
我是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上嘗試過的內容了。感謝您的任何輸入!
嘗試返回更新
return $this->db->update('news',$data);
另外,您在哪里輸入id變量?
也許做
$this->db->where('id', $this->input->post('id'))
所以看起來
$this->db->where('id', $this->input->post('id'));
return $this->db->update('news',$data);
但是,請先嘗試返回。
第2部分來自有關如何創建更新功能的注釋
public function edit_news($id,$data){
$slug = url_title($this->input->post('title'));
$data = array('title' => $this->input->post('title'),
'slug' => $slug,
'body' => $this->input->post('body')
);
$this->db->where('id', $this->input->post('id'));
return $this->db->update('posts',$data);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.