目前我使用的是mysql_real_escape_string(trim($_POST['new_name']));
,它工作正常,但是当我将其更改为mysqli_real_escape_string(trim($_POST['new_name']));
时,我得到Message: mysqli_real_escape_string() expects exactly 2 parameters, 1 given
我使用编码器,所以我的DB连接将在$this->db
的形式。
使用codeigniter查询绑定代替转义。同时使用$this->input->post()
,而不是直接访问$_POST
。
$query = "SELECT * FROM table WHERE name = ?";
$this->db->query($query, array($this->input->post('new_name'));
如果必须使用转义(错误的方式),则使用:
$new_name = $this->db->escape_str($this->input->post('new_name'));