htmlpurifier возвращает вопросительные знаки, когда пользователь вводит html?

  

Вряд ли это похоже на html-код, который нуждается в очистке.

Почему htmlpurifier превращает эту строку в вопросительный знак, хотя очевидно, что это должен быть пробел?

Мой точный код очистки html:

//purify the html input
include_once('inc/htmlpurifier-4.4.0/library/HTMLPurifier.auto.php');

$config = HTMLPurifier_Config::createDefault();
$config->set('Core.Encoding', 'UTF-8');
$config->set('HTML.Doctype', 'HTML 4.01 Transitional');

if (defined('PURIFIER_CACHE')) {
    $config->set('Cache.SerializerPath', PURIFIER_CACHE);
} else {
    # Disable the cache entirely
    $config->set('Cache.DefinitionImpl', null);
}

$input = $_POST["about_me"];

# Help out the Purifier a bit, until it develops this functionality
while (($cleaner = preg_replace('!<(em|strong)>(\s*)</\1>!', '$2', $input)) != $input) {
    $input = $cleaner;
}

$filter = new HTMLPurifier($config);
$htmlpurified_output = $filter->purify($input);

У меня включен utf8 в заголовках моих php-страниц, а также для mysql при сохранении информации.

Я могу писать, сохранять в БД и повторно отображать другие символы UTF8 внутри других текстовых областей на той же странице. Виновником определенно является htmlpurifier, возвращающий вопросительные знаки вместо реальных символов.

Я отвечу на любые другие вопросы, которые я могу.


person darkAsPitch    schedule 24.05.2012    source источник


Ответы (1)


И ответ...

Чтобы всегда убедиться, что ваша кодировка правильно установлена ​​​​во всех областях.

У меня была строка таблицы «about_me», настроенная только на прием символов ascii. Дух.

Извините, что отнял у всех время.

person darkAsPitch    schedule 24.05.2012