Вопрос

Мой crappy веб-хостинг сделал некоторые обновления на днях, и некоторые настройки изменились, потому что, глядя на вики нашей компании (MediaWiki), каждая цитата экранируется обратной косой чертой. Это касается не только данных, которые публикуются (т.е. статей), но и стандартного текста MediaWiki. например:

  

Вы перешли по ссылке на страницу, которой еще не существует. Чтобы создать страницу, начните вводить текст в поле ниже (см. Страницу справки для получения дополнительной информации). Если вы оказались здесь по ошибке, просто нажмите кнопку назад \ '\' \ '\' \ 'вашего браузера.

Первым делом я отключил magic_quotes_gpc И magic_quotes_runtime , используя файл .htaccess , но это все еще происходит. Мой php_info () сообщает об этом:

Setting             Local Value   Master Value  
magic_quotes_gpc        Off            On  
magic_quotes_runtime    Off            On  
magic_quotes_sybase     Off            Off  

Есть идеи?

Это было полезно?

Решение

Если флаги PHP установлены с помощью php_admin_flag / php_admin_value , вы не можете изменить его из файла .htaccess . Это вызвало у меня некоторую головную боль раньше. Отключите его в php.ini или отмените магические кавычки во время выполнения: http://talks.php.net/show/php-best-practices/ 26

Другие советы

Вы можете подтвердить, что данные в вашей БД не были повреждены. Если бы вы использовали addlash () для ваших данных, когда, без вашего ведома, были включены magic_quotes, то вы бы удвоили косые черты данных, попадающих в вашу БД.

Вам нужно будет заставить их изменить мастер-значение или обработать его самостоятельно. Я не верю, что вы можете установить magic_quotes_gpc () во время выполнения для суперглобальных объектов. (установка его во время выполнения приведет к удалению таких вещей, как база данных / файлы, но не глобальные переменные)

if (ini_get('magic_quotes_gpc') ) {
  foreach(

Вам нужно будет заставить их изменить мастер-значение или обработать его самостоятельно. Я не верю, что вы можете установить magic_quotes_gpc () во время выполнения для суперглобальных объектов. (установка его во время выполнения приведет к удалению таких вещей, как база данных / файлы, но не глобальные переменные)

<*>GET as $key=>$value) {

Вам нужно будет заставить их изменить мастер-значение или обработать его самостоятельно. Я не верю, что вы можете установить magic_quotes_gpc () во время выполнения для суперглобальных объектов. (установка его во время выполнения приведет к удалению таких вещей, как база данных / файлы, но не глобальные переменные)

<*>GET[$key] = stripslashes($value); } } // etc...

Возможно, что-то еще вызывает set_magic_quotes_runtime ().

Я использую stripslases () для удаления слешей при отображении.

http://www.php.net/manual/en/function .stripslashes.php

Вы пытались связаться со своим хостом crappy и записать ошибку? Вы, вероятно, не единственный, кого это касается, если вы находитесь на виртуальном хостинге.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top