在CKEditor textarea中插入HTML代码

时间:2013-04-30 05:24:53

标签: ckeditor

我想知道是否有插件才能在CKEditor textarea中插入HTML代码?

我尝试安装PBCKCode插件,但它不起作用,因为HTML是在我的textarea中执行的。

安东尼

EDIT1 ----- INSERTPRE插件-------

添加帖子时查询:

    INSERT INTO `Posts` (`slug`,`title`,`thumbnail`,`content`,`tags`,`state`,`click`,`createdAt`,`updatedAt`,`id`) VALUES ('dsq','dsq','http://4.bp.blogspot.com/-knCgLUMOkJc/TeMY2jkmACI/AAAAAAAAAV0/VByHmoMa2N8/s1600/first+blog+posting.jpg','<pre class="prettyprint">\r\n&lt;div&gt;toto&lt;/div&gt;</pre>\r\n\r\n<p>dqsdqs</p>\r\n','toto','0',0,'2013-04-30 12:15:46','2013-04-30 12:15:46',NULL);

当我尝试编辑帖子时,我的textarea中的结果:

    <pre class="prettyprint">

    &nbsp;</pre>

    <div>toto</div>

    <p>dqsdqs</p>

正如你所看到的那样,“div”发生了变化。

EDIT2 -----转义HTML -------

屏幕截图:http://grab.by/m8bs

正如你所看到它在P标签中工作(在slug上方),但它在我的textarea中不起作用。我认为CKEditor编码我的内容,但我不知道何时以及为什么...在我的数据库中一切正常,我将代码放入PRE标签。

3 个答案:

答案 0 :(得分:3)

检查这两个插件:

我们使用http://ckeditor.com/forum上的第一个,效果非常好。

更新:这是因为您在将HTML传递给textarea之前没有编码HTML。使用htmlspecialchars(或其他类似函数,如果你不使用PHP)来做到这一点。

Update2:你做错了什么,但我不知道在什么阶段。编辑器中带有一个editor.getData()元素的输出数据(<pre>)为:

<pre class="prettyprint">&lt;div&gt;</pre>

请注意<pre>未编码,但其中包含<div>。你的例子告诉我你“扁平化”了那个结构 - 你应该将这两个事物平等编码:

&lt;pre class=&quot;prettyprint&quot;&gt;&amp;lt;div&amp;gt;&lt;/pre&gt;

注意:&amp;lt;是已编码的&lt;

答案 1 :(得分:0)

您可以使用ck编辑器标题中的源菜单添加您的html

使用本教程 demo link

答案 2 :(得分:0)

好的,试试这个

添加帖子

addslashes($_POST['post_from_textarea']);

编辑

stripslashes($yourvairablegetRowsQuery)