Php Codigniter更新查询不工作
我的问题是在这个模型中。如果删除where语句,查询将正确运行,但我需要where语句,以便根据id更改一行。使用where语句运行查询时,我没有错误,但数据库中没有任何受影响的行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-
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);
}