2013-06-12 67 views
-2

目前我使用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

+2

你沒有做絲毫的研究。如果你訪問過php文檔並且看到了mysqli_real_escape_string頁面,你就會知道它需要2個參數。你想要逃脫什麼以及連接到連接 – Ali

+0

@AliTrixx是的,但是因爲我使用CI我對'$ link' var應該是什麼感到困惑 –

+2

通過提出一個壞問題,你沒有做任何好事爲海報,也爲網站。在評論中解釋他們的錯誤,而不是'安慰upvote'。 –

回答

4

而不是轉義,使用Codeigniters查詢綁定。也可以使用$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')); 
+0

感謝這項工作 –