在Codeigniter中的bool上调用成员函数escape_str()

时间:2019-12-19 06:14:03

标签: php mysql codeigniter

我正在使用Codeigniter Framework更新数据库中的数据,并在使用诸如$this->db->update()之类的Codeigniter核心数据库功能时遇到以下故障。但是,如果我使用普通的SQL查询,则可以正常工作。

  

类型:错误   消息:在bool上调用成员函数escape_str()   文件名:D:\ xampp \ htdocs \ code \ system \ database \ drivers \ mysqli \ mysqli_driver.php   行号:393

我的模型代码:

public function updatePolicy($data, $pid)
    {
        $this->db->where("id",$pid);
        $res = $this->db->update('tablename', $data);
        if ($res)
            return true;
        else
            return false;
    }

我的$ data数组:

Array
(
    [agent_id] => 659
    [finace_company] => 23
    [vehicle_type] => 4
    [policy_month] => 2019-12-18
    [policy_number] => 3005/189/00/B00
    [name] => TEST
    [reg_number] => HR24Ab8585
    [proposal] => 
    [attachment] => 
    [attachment2] => 
    [payment_mode_agent] => online
    [od_premium] => 1577.00
    [comments] => 24
    [branch] => 6
    [smId] => 12
    [frenchise] => 15
    [rejectStatus] => 0
)

当我用policy_number更改reg_number时,它成功更新了。

1 个答案:

答案 0 :(得分:0)

这可能意味着您的数据库连接已失败或从未尝试过进行连接。 尝试在application-> config-> database.php

中创建另一个数据库
sed -n -i '/^\([^#].*main\)/{s/main/main contrib non-free/p}' /etc/apt/sources.list

希望这对您有用。