Сodeigniter валидация экранирование данных для SQL
Primary tabs
Игнайтер даёт нам "3 метода" фильтрации данных:
$this->db->escape()
Зависит от типа данных и может отфильтровать только строку - кавычки добавит автоматически:
$sql = "INSERT INTO table (title) VALUES(".$this->db->escape($title).")";
$this->db->escape_str()
от типа данных не зависит, окружать кавычками придётся самому:
$sql = "INSERT INTO table (title) VALUES('".$this->db->escape_str($title)."')";
$this->db->escape_like_str()
- эту штуку используем для сравнения типа LIKE^
This method should be used when strings are to be used in LIKE conditions so that LIKE wildcards ('%', '_') in the string are also properly escaped.
$search = '20% raise'; $sql = "SELECT id FROM table WHERE column LIKE '%".$this->db->escape_like_str($search)."%'";
- Log in to post comments
- 1986 reads