Php SQL查询在CodeIgniter中不工作?
所以我只是尝试使用一个数组,使用codeigniter运行一个更新查询。这是我的密码Php SQL查询在CodeIgniter中不工作?,php,mysql,codeigniter,Php,Mysql,Codeigniter,所以我只是尝试使用一个数组,使用codeigniter运行一个更新查询。这是我的密码 $array = array('departmentID' => $departmentID); $this->db->where($array); $data = array( "pending" => "pending+".$pendingNew, "approved" => "approved+".$approvedNew,
$array = array('departmentID' => $departmentID);
$this->db->where($array);
$data = array(
"pending" => "pending+".$pendingNew,
"approved" => "approved+".$approvedNew,
"notApproved" => "notApproved+".$notApprovedNew
);
$this->db->update('departments', $data);
它运行良好,没有给出任何错误,但没有更新数据库,所以我尝试像这样打印生成的查询
echo$this->db->last\u查询
它给了我以下信息
UPDATE `departments` SET `pending` = 'pending+2', `approved` = 'approved+6', `notApproved` = 'notApproved+0' WHERE `departmentID` = '10';
所以我相信问题是因为它把撇号放在了加法部分周围,就像我删除这些撇号,然后在地板上运行sql一样,它会正确地更新
UPDATE `departments` SET `pending` = pending+2, `approved` = approved+6, `notApproved` = notApproved+0 WHERE `departmentID` = '10'
有人能告诉我如何解决这个问题吗?试着用这种方式更新这些值,这对我很有用
$this->db->set('pending', 'pending + ' . (int) $pendingNew, false);
$this->db->set('approved', 'approved + ' . (int) $approvedNew, false);
$this->db->where($array);
$this->db->update('departments');
@David如果成功,请接受此用户回答。