CKEditor displaying HTML tags in editor

匿名 (未验证) 提交于 2019-12-03 02:54:01

问题:

I am using a CKEditor and saving content to a MySQL database. When trying to edit the content again in the editor, I am getting HTML tags displayed as text, for example:

my test<br />and second line 

How can I have it display in the editor correctly again?

I have been fiddling with htmlentities and html_entity_decode and CKEditor related settings for over an hour now, with no avail.

   $config = array();    $config['enterMode'] = 2;    $config['shiftEnterMode'] = 1;    //$config['basicEntities'] = FALSE;    //$config['entities'] = FALSE;    //$config['entities_greek'] = FALSE;    //$config['entities_latin'] = FALSE;    //$config['htmlDecodeOutput'] = TRUE;     $ck_editor->editor("sec1_content", $default_value, $config); 

回答1:

It seems that CodeIgniter's func set_value() acts like htmlspecialchars() in some way. So if you are getting <any_tag> on CKEditor this workaround can help you. Change

$ck_editor->editor("sec1_content", set_value('sec1_content', html_entity_decode($default_value)), $config); 

To this:

$ck_editor->editor("sec1_content", html_entity_decode(set_value('sec1_content', $default_value)), $config); 

PoloRM
Put html_entity_decode around set_value. The reason for this is obviously because the set_value method might not use the $default_value parameter but return the posted data instead.



回答2:

For people who might have the same issue with CodeIgniter/CKEditor:

The way to resolve this issue and still use the CodeIgniter set_value() method is the following:

$ck_editor->editor("sec1_content", set_value('sec1_content', html_entity_decode($default_value)), $config); 

Do this:

$ck_editor->editor("sec1_content", html_entity_decode(set_value('sec1_content', $default_value)), $config); 

Put html_entity_decode around set_value. The reason for this is obviously because the set_value method might not use the $default_value parameter but return the posted data instead.

Thank you coramba for making me realize my mistake.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!