CKEditor опубликовал выпуск в Codeigniter, теги обрезаны - PullRequest
2 голосов
/ 11 июля 2011

Я работаю над проектом с CodeIgniter, на моем локальном хосте с последней версией wamp server на w7 enterprise x64 SP1 с google chrome 14.0.803.0 dev-m, и добавил CKeditor 3.6.1, следующий это руководство .

Есть странная проблема, с которой я страдаю, надеюсь, вы поможете мне.

Когда я публикую данные, они как бы «обрезаются». Я имею в виду, что перед отправкой формы содержимое текстовой области, когда я нажимаю исходный код на ckeditor, выглядит следующим образом:

<p>
    <span style="font-size:16px;"><span style="font-family:comic sans ms,cursive;"><span style="background-color:#ffff00;">foobar</span></span></span></p>

Но после публикации это становится таким (получил код, используя die("<pre>".print_r($_POST)."</pre>") в самом верху моего метода публикации и просмотра исходного кода, то же самое добавляется в базу данных):

<p>

 <span>span style="font-family:comic sans ms,cursive;"><span>foobar</span></span></span></p>

Почему <span> превращается в <span>span? Как я могу это исправить?

p.s: вы бы предложили TinyMCE вместо CKeditor?

Заранее спасибо.

1 Ответ

3 голосов
/ 03 августа 2011

У вас включен XSS фильтр в файле конфигурации?Он удаляет некоторые «нелегальные» теги из вашего ввода POST.

Если да, выключите его и попробуйте снова.Если ваша проблема устранена, теперь вы знаете, где она лежит.Теперь вам нужно только включить фильтр XSS и найти способ обойти фильтр XSS для поля CKEditor.

Я использовал этот метод: http://codeigniter.com/forums/viewthread/186100/#919438

...