multiple update using explode & where in (codeigni

2019-08-28 21:12发布

Morning guys,

I would like to update multiple row using explode function and where in for code igniter, but the problem is, all rows all updated.

here is my controller :

$ids = explode(',', $this->post('id'));
$this->chatmod->update(array('id'=>$ids),$data);

my model :

public function update($ids=null,$data=null)
    {
        $this->db->where_in($ids);
        $this->db->update($this->table, $data);
        return true;
    }

2条回答
爷、活的狠高调
2楼-- · 2019-08-28 21:57

For updating using column id you need to pass the column name in the where_in function like $this->db->where_in("id",$idarray);

For your code Try the below code:

public function update($ids=null,$data=null)
{
    $this->db->where_in('id',$ids);////Pass the column name of the database as first argument.
    $this->db->update($this->table, $data);
    return true;
}
查看更多
贪生不怕死
3楼-- · 2019-08-28 22:02

The where_in query should be supplied with target column, like :

$ids = explode(',', $this->post('id'));
$this->chatmod->update($ids,$data);

public function update($ids=null,$data=null)
    {
        $this->db->where_in('id', $ids);
        $this->db->update($this->table, $data);
        return true;
    }
查看更多
登录 后发表回答