如何防止codeigniter在我們的查詢中不插入單引號?如何刪除自動插入codeigniter中的單引號?
當我們編寫查詢在笨就會自動插入單引號,像這樣:
$this->db->select('id, ifnull(name,\'\') as name');
$this->db->from('table');
它創建數據庫錯誤。
如何防止codeigniter在我們的查詢中不插入單引號?如何刪除自動插入codeigniter中的單引號?
當我們編寫查詢在笨就會自動插入單引號,像這樣:
$this->db->select('id, ifnull(name,\'\') as name');
$this->db->from('table');
它創建數據庫錯誤。
$this->db->select('id, ifnull("name",\'\') as name', false);
$this->db->from('table');
是你在追求什麼。引號是逃避停止sql注入,一定不要混合來自用戶的unsanitized輸入。
我想我還應該注意,使用這個false參數將停止雙引號封裝,如果您使用的是postgres,您可能需要封裝任何用作列名稱的關鍵字。 (見name
和"name"
之差)
它應該是什麼樣子? – Treffynnon
當我們執行它時,它添加了單引號錯誤的地方,即'table'.ifnull('name,'')作爲名稱'這裏單引號需要圍繞函數以及 – Suleman