[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Кавычки запросах: экранирование или замена?
Владимир55
Как я понял, для противодействия вредного влияния кавычек на запрос используется их экранирование с помощью специальных функций, в чстности addslashes и mysql_real_escape_string.

Однако, хотелось бы понять, почему для этой цели не подходит замена, например через str_replace? Ведь любую кавычку можно заменить на её HTML сущность или близкий по начертанию знак. Пользователь не ощутит никакой разницы, а все проблемы исчезнут!

Почему так не делается?
Valick
замену на HTML сущность - это при выводе в браузер, в базе лучше держать все в первоначальном варианте, в последствии проще редактировать.

_____________
Стимулятор ~yoomoney - 41001303250491
Владимир55
Цитата (Valick @ 14.01.2013 - 08:43)
замену на HTML сущность - это при выводе в браузер, в базе лучше держать все в первоначальном варианте, в последствии проще редактировать.

Вот этого я не понял:

1. чем лучше держать в базе все в первоначальном варианте?
2. зачем проводить замену на HTML сущность при выводе в браузер - ведь браузер и первородное знаечение также воспроизводит?
Valick
Цитата
1. чем лучше держать в базе все в первоначальном варианте?

ну допустим вы крутой модельер, закупили 10 рулонов итальянской ткани, как вы поступите? положите ткань на скалд как она есть в рулонах или порежете на куски по 1 метру и аккуратно сложите в коробочки? ведь если вам понадобытся куски по 2 метра вам придется сшивать их.
это конечно очень грубый пример
Цитата
2. зачем проводить замену на HTML сущность при выводе в браузер - ведь браузер и первородное знаечение также воспроизводит?

для защиты от XSS уязвимостей


_____________
Стимулятор ~yoomoney - 41001303250491
inpost
mysql_real_escape_string - чтобы данные были в ЧИСТОМ виде в БД.
htmlspecialchars - для вывода данных на страницу уже из БД.
int, float - для чисел!

Всё, стандартные правила, придерживаясь их оберегаешь себя от sql-inj

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.