Я использую HTML очиститель с tinyMCE. Я получаю содержимое, помещенное в текстовую область, используя $_POST['content'];
После этого я использую следующий код
require_once 'htmlpurifier/library/HTMLPurifier.auto.php';
$content = $_POST['content'];
$purifier = new HTMLPurifier();
$pure_content = $purifier->purify($content);
Однако, когда я повторяю $ pure_content, я получаю код, который я ввел без каких-либо изменений. Чтобы убедиться, что с HTMLpurifier нет проблем, я использовал следующий фрагмент кода
$value = '<script>Malicious script</script><b>Bold</b>';
$pure_content = $purifier->purify($value);
и после эха я получаю смелый Так что я делаю неправильно здесь?
EDIT значение внутри $ _POST ['content'] является <script>Malicious script</script><b>Bold</b>
Я использовал редактор tinyMCE. Проблема заключалась в том, что он автоматически кодирует весь введенный html-код, если таковой имеется. Мне пришлось использовать
$decoded_content = html_entity_decode($content);
а затем передать результат в html очиститель.