2013-08-17 2 views
3

Я создаю простую систему блога с помощью редактора FuelPHP и TinyMCE.HTML-теги не отображаются

Когда я отформатирую свой текст в TinyMCE (или CKEditor, не имеет значения) и сохраните его в моей базе данных, все в порядке. Однако, когда я печатаю текст обратно, удивительно, мой браузер не будет отображать теги html и отображает их как обычный текст!

Я проверил и у меня нет никаких CDATA на странице, что может вызвать проблему.

Вот как это делает:

How it renders

Однако при проверке проблемы с FireBug, я заметил много пробелов перед <h2> тега печатается! Если я просто сделаю небольшое изменение в пространствах (удалите одно или добавьте другое), тогда браузер отобразит теги и отобразит текст правильно!

Можете ли вы, ребята, помочь мне с этой проблемой? Это действительно странно.

+0

Как вы можете передать данные на представление? Можете ли вы показать код? Если вы используете класс View, есть метод, который может позволить вам выбирать, когда кодировать текст или нет (по умолчанию да): http://fuelphp.com/docs/classes/view.html#/method_set –

+0

@MarcoPace О да .. Ты сделал мой день Марко :) Большое спасибо. Я просто проигнорировал этот параметр: p –

+0

Очень хорошо :-), я напишу и отвечу для будущей цели. –

ответ

2

при сохранении данных в базе данных его закодированные по некоторым причинам безопасности вам просто нужно

html_entity_decode("string retrived from database");

, а затем распечатать его.

+0

Я проверил базу данных. и он хранится как обычный текст с тегами http. –

+0

Это не проблема. Однако FuelPHP выполнил кодировку после того, как она извлекла текст из базы данных. Использование этой функции помогло решить проблему. Thx –

+0

@MiroMarkaravanes Как вы это исправили? – PapaHotelPapa

0

Вместо кодирования и декодирования вы можете использовать set_safe() method или использовать аргумент $filter в set().

Как это:

$view->set_safe('body', $data); 

Или

$view->set('body', $data, false); 

или список вид. Это предотвратит декодирование.

0

Как вы можете передавать данные на представление? Можете ли вы показать код?

Если вы используете View class there is a method, который может позволить вам выбирать, когда кодировать текст или нет (по умолчанию да).

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