Работа вокруг волшебных кавычек, или просто удостоверяются, что они прочь?

попробуйте установить разрешение для /home/user/public_html/wp-settings.php на 777 и повторите попытку. если это работает, вы должны понизить разрешения по одному, пока не появится ошибка. * Не оставляйте wp-settings.php на 777 надолго.

7
задан Dukeling 2 November 2013 в 18:50
поделиться

4 ответа

Не размещайте обе ситуации. Два пути выполнения кода = дважды головные боли, плюс существует хороший шанс, Вы ошибетесь и забудете обрабатывать обе ситуации где-нибудь.

Я раньше проверял, шли ли волшебные кавычки или прочь, и если они шли, отменяют свое волшебство (как другие в потоке предположили). Проблема с этим, Вы изменяете настроенную среду (неважно, как глупый), который может ожидать другой программист.

В эти дни я пишу код, как будто волшебные кавычки выключены, и в моем основном include/bootstrap/always-runs файле я проверяю, идут ли волшебные кавычки или прочь. Если они идут, я выдаю Исключение, которое объясняет, почему это - плохая вещь, и предоставьте инструкции относительно того, как они могут быть выключены.

Этот подход позволяет Вам кодировать к единственному поведению, поощряет других людей, использующих Ваш код настраивать свои серверы правильно (волшебные кавычки уходит в PHP 6), и если кому-то действительно нужны волшебные кавычки на, они могут обработать Ваше исключение и взять их жизни в их собственные руки.

14
ответ дан 6 December 2019 в 08:46
поделиться

Я проверил бы использование установки get_magic_quotes_gpc() и сделайте большой шумный выход с ошибкой. По ошибке сообщают администратору о надлежащей установке.

4
ответ дан 6 December 2019 в 08:46
поделиться

На большем количестве ноты стороны php 6 не будет поддерживать их больше. Так запись кода для них прочь может быть выгодной в будущем.

1
ответ дан 6 December 2019 в 08:46
поделиться

Я удостоверился бы, что это выключено, если это возможно (требует доступа к .htaccess или апачской конфигурации). Лучше избежать его в целом, чем разделение, это - поведение, которое требует большего количества ресурсов и подвержено ошибкам.

Если отключение его не является опцией, Ваш пример кода мог быть полезен для входа superglobals ($ _GET, $ _POST...), но удостовериться, что не применил его на данные, прибывающие из источников кроме тех supergloabls. Такое неправильное употребление довольно распространено.

Просто удостоверьтесь, что при превращении magic_quotes_gpc () прочь для наличия надлежащего механизма выхода для защиты Вас от SQL inkection (такого как mysql_real_escape_string () или PDO подготовил операторы). Можно читать больше на предотвращении Внедрения SQL - здесь.

2
ответ дан 6 December 2019 в 08:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: