Показать сообщение отдельно

  #13  
Старый 02.03.2009, 22:14
Wolf-single
Новичок
Регистрация: 26.02.2009
Сообщений: 12
С нами: 9054526

Репутация: 18
По умолчанию

Цитата:
Сообщение от Hirurgi  
Автор пишет:

"Меняем следующие параметры:
Код:
magic_quotes_gpc = Off"

Может я ошибаюсь, но помоему magic_quotes_gpc =On - противодействует sql ИНЪЕКЦИЯМ. экранируя слеши, кавычки и ядовитые нули.
Поправте если ошибаюсь.
Да, происходит экранирование всех данных, т.е. там, где это нужно и там, где это совсем не нужно... и как следствие - потеря производительности.
Сам разработчик php рекомендует отключать эту директиву:
Код:
Волшебные кавычки (Magic Quotes) - это процесс автоматического экранирования входящих данных PHP скрипта. Желательно отключать директиву magic quotes и вместо этого экранировать данные в процессе разработки, если это необходимо.
В php есть файл php.ini-recommended(рекомендуемые разработчиком настройки), в котором директива magic_quotes_gpc отключена
Код:
Переносимость. Возможность присваивания значений on или off сказывается на переносимости. Используйте get_magic_quotes_gpc() для проверки и пишите код соответствующим образом. 
Производительность. Так как не все данные заносятся в базу данных, то присутствует потеря производительности при экранировании всех данных. Простой вызов экранирующих функций (например, addslashes()) во время выполнения более эффективен. Хотя php.ini-dist включает эти директивы по умолчанию, php.ini-recommended отключает их. Эта рекомендация соответствует, в основном, по причинам производительности. 
Неудобство. Так как не все данные должны быть экранированы, то часто досадно видеть экранированные данные там, где этого не должно быть. Например, при отправке письма из формы можно наблюдать связку \' в самом письме. Для того, чтобы это исправить, требуется дополнительно использовать stripslashes().
_http://ru.php.net/magic_quotes

Последний раз редактировалось Wolf-single; 02.03.2009 в 22:18..