2009-12-27 2 views
1

Я работаю над формой типа сообщения. Сайт основан на WordPress. При проверке формы я заметил, что каждый раз, когда я использую символ '' ', когда сообщение отправляется, оно печатается вместо «\».Символ '' 'отображается как «» в php-выходе

Например:

Входной сигнал: "Боба планы на день рождения." Результат: «Планы рождения Боба».

Как остановить php или wordpress, в зависимости от того, что ответит, от этого?

ответ

1

Возможно, проблема связана с magicquotes и в соответствии с сайтом this, исправление заключается в добавлении следующей строки s в файл темы:

if (get_magic_quotes_gpc()) { 
    $_POST  = array_map('stripslashes_deep', $_POST); 
    $_GET  = array_map('stripslashes_deep', $_GET); 
    $_COOKIE = array_map('stripslashes_deep', $_COOKIE); 
    $_REQUEST = array_map('stripslashes_deep', $_REQUEST); 
} 

Что бы перевести на что-то подобное, если магические кавычки разрешены, удалите слеши из этих переменных массивов. Поэтому исправление проблемы.

1

Может быть magic_quotes_gpc или даже хуже magic_quotes_runtime.

Эта функция DEPRECATED с PHP 5.3.0 и удалена с PHP 6.0.0. Опираясь на эту функцию, очень не рекомендуется.
[...]
Когда magic_quotes включены, все '(одинарные кавычки), "(двойные кавычки), \ (обратный слэш) и NUL являются символом обратной косой черты автоматически.
2

Те Magic Quotes, один из наиболее спорные особенности PHP.

Это вариант в php.ini, вы должны обратиться к своему провайдеру хостинга и они закрыли его (Или искать вариант самостоятельно, если вы достаточно привилегию).

Смежные вопросы