gpt4 book ai didi

mysql - 无法在 codeigniter 中更新动态多条记录

转载 作者:行者123 更新时间:2023-11-30 21:48:08 25 4
gpt4 key购买 nike

我正在尝试使用 $this->db->update() 更新多条记录,同时更新记录它只更新表的第一条记录。这是我的模态

public function SaveUpdate($data, $totalRecord)
{
for ($i = 0; $i < $totalRecord; $i++) {

$id = implode(", ", $data['id']);
$DeptId = implode(", ", $data['defaultdeptid']);
$chktme = implode(", ", $data['checktime']);

//echo $chktme. " and id is " .$id;
//die();

$this->db->set('checktime', $data['checktime'][$i]);
$this->db->where('ci.id', $data['id'][$i]);

return $this->db->update('checkinout as ci');
}
}

其中 $totalRecord 是循环将根据记录执行的次数,$data 包含 id、deptid 和 checktime.. 当我 echo checktime 时还有一件事和 id 它显示所有记录的 id 和检查时间..

最佳答案

它只更新第一条记录,因为您正在使用 return。所以要解决这个问题,请删除 return!

public function SaveUpdate($data, $totalRecord)
{
$myReturn = "Update Succeeded";
for ($i = 0; $i < $totalRecord; $i++) {

//$id = implode(", ", $data['id']); //You dont need this
//$DeptId = implode(", ", $data['defaultdeptid']); //You dont need this
//$chktme = implode(", ", $data['checktime']); //You dont need this

//echo $chktme. " and id is " .$id;
//die();

$this->db->set('checktime', $data['checktime'][$i]);
$this->db->where('ci.id', $data['id'][$i]);

$this->db->update('checkinout as ci');
if(!($this->db->affected_rows())){
$myReturn = "Unable to update ".$data['checktime'][$i];
return $myReturn;
}
}
return $myReturn;
}

关于mysql - 无法在 codeigniter 中更新动态多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48516369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com