отображать HTML контент из базы данных с форматированием в нем - PullRequest
0 голосов
/ 25 мая 2010

Я использовал wmd-редактор в моем приложении cakephp v1.3 .

Конфигурация, которую я написал, выглядит следующим образом:


wmd_options = {
            output: "HTML",

            lineLength: 40,

            buttons: "bold italic | link blockquote code image | ol ul heading hr",

            autostart: true
        };

Когда я отправляю форму, HTML-код в текстовой области с поддержкой wmd сохраняется в базе данных с htmlentities() для текста, а затем автоматически декодируется методом html_entity_decode().
но текст отображается так, как он включает в себя HTML-кодирование, как это

<p><strong>hello dear friends</strong></p>\n\n<pre><code>I want to make sure that everything that you type is visible clearly.\nadasfafas\n \ n \ n

\ n

sadgsagasdgxcbxcbxc

\ n
\ n \ n

sadfgsgasdsgasgs

\ n \ n

это ссылка

Пожалуйста, помогите мне решить эту проблему

Спасибо

Ответы [ 2 ]

1 голос
/ 25 мая 2010

Для санации против XSS обычно лучше сохранить необработанный HTML в базе данных без изменений и санировать во время вывода / отображения. Используйте базовую библиотеку Sanitize .

0 голосов
/ 25 мая 2010

Поскольку вы установили параметр как output: "HTML",, он сохраняется как HTML, однако вы можете использовать функцию strip_tags для удаления тегов HTML из текста.

...