За последние 24 часа нас посетили 33068 программистов и 1755 роботов. Сейчас ищут 878 программистов ...

sqlite_escape_string

Тема в разделе "Вопросы от блондинок", создана пользователем Ігор, 5 фев 2009.

  1. Ігор

    Ігор Активный пользователь

    С нами с:
    7 апр 2008
    Сообщения:
    195
    Симпатии:
    0
    Что вообще делает эта функция?
    Что она экранирует SQL запросы я знаю. Но как?
    Что пропускает и что нет?
    Если я обрабатываю данные SQL запросов, скажем htmlspecialchars? то ей можно не пользоваться?
     
  2. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
  3. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Не стоит путать. HTML отдельно, SQL отдельно.
    htmlspecialchars это способ защититься от простейших xss и социальной инженерии. А escape_string - от sql-инъекций
     
  4. Ігор

    Ігор Активный пользователь

    С нами с:
    7 апр 2008
    Сообщения:
    195
    Симпатии:
    0
    PHP:
    1.  
    2. <?PHP
    3. $descr=sqlite_escape_string(htmlspecialchars($_POST['descr'], ENT_QUOTES));
    4.  $name=sqlite_escape_string(htmlspecialchars($_POST['name'],ENT_QUOTES));
    5.  $added=sqlite_escape_string($_POST['added']);
    6.  ......
    7.  $date=date('y-m-d');
    8.  
    9.  $query="INSERT INTO folders VALUES (NULL,
    10.                                      '$cId',
    11.                                      '$path',
    12.                                      '$name',
    13.                                      '$descr')"
    14. ?>
    15. Примерно так?
     
  5. Ігор

    Ігор Активный пользователь

    С нами с:
    7 апр 2008
    Сообщения:
    195
    Симпатии:
    0
    Достаточно ли обрабатывать все принимаемые данные функцией sqlite_escape_string для избежения SQL инъекции?