Я пытаюсь выбрать некоторые значения, используя пользовательскую строку. ниже мой код
$this->db->from('posted'); $st="infor='rent' AND (typeq='in' OR typeq='out')"; $this->db->where($st); $q = $this->db->get();
Ошибка базы данных Произошла
Error Number: 1054 Unknown column 'infor='rent'' in 'where clause' SELECT * FROM (`posted_ads`) WHERE `infor='rent'` AND (typeq='in' OR typeq='out') Filename: C:\wamp\www\parklot\system\database\DB_driver.php Line Number: 330
Я думаю, проблема в том, что
WHERE `infor='rent'`
когда i manualy исполняет этот код, он отлично работает.
WHERE infor='rent'
как мне избавиться
``
потому что его автоматически добавили
Добавьте третий параметр в where()
и установите его в FALSE
$this->db->from('posted'); $st="infor='rent' AND (typeq='in' OR typeq='out')"; $this->db->where($st, NULL, FALSE); $q = $this->db->get();
$this->db->where()
принимает необязательный третий параметр. Если вы установите значениеFALSE
, CodeIgniter не будет пытаться защитить ваши имена полей или таблиц с помощью обратных ссылок.
Документация CodeIgniter