Магические кавычки в PHP
Магические кавычки — эффект автоматической замены кавычки на обратный слэш и кавычку при операциях ввода/вывода в PHP.
Пример: пусть в форму, в поле с именем name пользователь ввел значение A"B, содержащее кавычку. Тогда, если в настройках PHP включены магические кавычки для GET, POST и COOKIE, после отправления формы в переменной $_POST["name"] будет записано A\"B.
Изначально предполагалось, что это облегчит работу начинающих программистов и позволит им избежать ошибок, связанных с безопасностью при работе с базой данных. Однако, предположения не оправдались, магические кавычки только усложнили работу, причем для начинающих они совершенно непонятны.
В PHP несколько видов магических кавычек. Наиболее распространенные:
Пример: пусть в форму, в поле с именем name пользователь ввел значение A"B, содержащее кавычку. Тогда, если в настройках PHP включены магические кавычки для GET, POST и COOKIE, после отправления формы в переменной $_POST["name"] будет записано A\"B.
Изначально предполагалось, что это облегчит работу начинающих программистов и позволит им избежать ошибок, связанных с безопасностью при работе с базой данных. Однако, предположения не оправдались, магические кавычки только усложнили работу, причем для начинающих они совершенно непонятны.
В PHP несколько видов магических кавычек. Наиболее распространенные:
- magic_quotes_gpc (GET/POST/COOKIE) - слеши добавляются ко всем переменным $_GET, $_POST, $_COOKIE
- magic_quotes_runtime - слэши добавляются к содержимому, читаемому из файлов
- php.ini на сервере (строчка: magic_quotes_gpc = Off)
- .htaccess в текущем каталоге (строчка: php_flag magic_quotes_gpc Off)
- функция php (например, set_magic_quotes_gpc(0))
Прочли: 2289 | Изменено: 15 марта 2011 | Добавлено: 10 января 2011 | На главную