Php Codigniter更新查询不工作

Php Codigniter更新查询不工作,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,我的问题是在这个模型中。如果删除where语句,查询将正确运行,但我需要where语句,以便根据id更改一行。使用where语句运行查询时,我没有错误,但数据库中没有任何受影响的行 public function update_goods() { $id=$this->input->post('ID'); $data=array( 'ID'=>$this->input->post('ID'), 'Title'=>$this-

我的问题是在这个模型中。如果删除where语句,查询将正确运行,但我需要where语句,以便根据id更改一行。使用where语句运行查询时,我没有错误,但数据库中没有任何受影响的行

 public function update_goods()
 {
   $id=$this->input->post('ID');
   $data=array(
     'ID'=>$this->input->post('ID'),
     'Title'=>$this->input->post('Title'),
     'Value'=>$this->input->post('Value'),
     'Description'=> $this->input->post('Description'),

  );

  $this->db->where('ID', $id);
  $this->db->update('goods',$data);


 }

基于这一点,这应该可以很好地工作

我认为您应该从数组中获取ID,尽管它不需要更新

 public function update_goods()
 {
   $data = array(
     'Title'       => $this->input->post('Title'),
     'Value'       => $this->input->post('Value'),
     'Description' => $this->input->post('Description'),

   );
   $this->db->where('ID', $this->input->post('ID'));
   $this->db->update('goods', $data);
 }

另外,验证$this->input->post'ID'是否引用了商品表中的记录。

尝试回显$ID。您正在获取ID吗?echo$this->db->last_query;-在你的更新查询结束时试试这个。谢谢你,我的朋友,但我的问题不同,我的表单中有一个隐藏的输入,而该输入没有通过id…哈哈,我们注意我在答案中的最后一点;很高兴听到你明白了。
 public function update_goods()
 {
   $data = array(
     'Title'       => $this->input->post('Title'),
     'Value'       => $this->input->post('Value'),
     'Description' => $this->input->post('Description'),

   );
   $this->db->where('ID', $this->input->post('ID'));
   $this->db->update('goods', $data);
 }