How can i give a where condition before update_batch in codeigniter? -
i want update table input same input fields names array , has add more function generates input fields this:
i want update_batch in codeigniter model created function this: code block:
function update_batch_all($tblname,$data=array(),$userid) { $this->db->trans_start(); $this->db->where('userid',$userid); $this->db->update_batch($tblname,$data); $this->db->trans_complete(); return true; }
it not working. can 1 me how can update tables data update batch has condition?
you can read docs update_batch()
here
here's short summary:
you pass in associative array has both, key, , update value. third parameter update_batch()
call, specify key in assoc array should used clause.
for example:
$data = array( array( 'user_id' => 1, 'name' => 'foo' ), array( 'user_id' => 2, 'name' => 'bar' ) ); $this->db->update_batch($tbl, $data, 'user_id');
breakdown of arguments passed:$tbl
table name. $data
associative array. 'user_id'
tells ci user_id
key in $data clause.
effect of above query: name user user_id = 1
gets set foo
, name user user_id=2
gets set bar
.
in case, if want set same user_id
key in each array data
array, can quick loop:
foreach ($data &$d) { $d['user_id'] = $user_id; } $this->db->update_batch($tbl, $data, 'user_id');
Comments
Post a Comment