[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите разобраться с обилием ф-ций экранирования
Руслан К.
Добрый день!

Я новичок в PHP. Прочитал много всего. Везде советуют применять функцию mysql_real_escape_string при формировании запроса.

Но ведь htmlspecialchars делает тоже самое, плюс она убирает спец.символы.

Объясните , пожалуйста, мне, дилетанту, в чем сокральный смысл?



Спустя 25 минут, 41 секунда (25.03.2010 - 10:48) twin написал(а):
А точно тоже самое? Чтобы понять всю сокральность смысла, нужно внимательно посмотреть, что именно делают эти функции. В мануале, а не там, где
Цитата
Прочитал много всего.

Обратить внимание на слова "экранирование" и "замена".
Для того, что бы в базу попали не искаженные заменами данные, и применяют специальные функции. Которые служат для того, что бы подготовить данные к транспортированию. Это mysql_escape_string и mysql_real_escape_string.
Последняя учитывает кодировку соединения, потому несколько предпочтительнее.

Спустя 23 минуты, 22 секунды (25.03.2010 - 11:11) Руслан К. написал(а):
Т.е. функцией mysql_real_escape_string нужно сначала экранировать передаваемые данные, а затем функцией htmlspecialchars убирать спец.символы? После этого передать данные в запрос SQL?

Спустя 5 минут, 16 секунд (25.03.2010 - 11:16) twin написал(а):
Во первых, ничего htmlspecialchars не убирает. А во вторых, она к формированию запроса имеет отношение так же, как седло к корове. То бишь она там вообще не нужна и вредит.

Спустя 1 минута, 13 секунд (25.03.2010 - 11:18) phz написал(а):
В базу записуешь данные через mysql_real_escape_string, на выходе пропускаешь данные через htmlspecialchars или strip_tags

Спустя 13 минут, 18 секунд (25.03.2010 - 11:31) Руслан К. написал(а):
Спасибо за ответы. Извините за возможно глупые вопросы

Спустя 17 минут, 42 секунды (25.03.2010 - 11:49) twin написал(а):
Важно не то, глупые они или умные. Важно то, что эти ответы ты можешь приплюсовать к коллекции
Цитата
Прочитал много всего.

А по сему и говорю - смотри мануал. Это конечная инстанция.
Быстрый ответ:

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