CKEditor-如何在富文本中保存和显示html代码

CKEditor-如何在富文本中保存和显示html代码,html,tags,ckeditor,Html,Tags,Ckeditor,我有html文本区的纯文本,有html代码样本存储在MySQL中 我把textarea改成了ckeditor类。这一切都很好,但所有html代码块现在都不会以富文本模式显示 我尝试使用 <table border="1"> <tr> <td>100</td> </tr> </table> 我立刻看到了正确的画面 表单提交后,我得到变量: $description=$\u POST['descrip

我有html文本区的纯文本,有html代码样本存储在MySQL中

我把textarea改成了ckeditor类。这一切都很好,但所有html代码块现在都不会以富文本模式显示

我尝试使用

 <table border="1">
   <tr>
     <td>100</td>
   </tr>
 </table>
我立刻看到了正确的画面

表单提交后,我得到变量:
$description=$\u POST['description']并将其放入数据库

在数据库中,我看到此变量的下一个值:

<pre class="prettyprint">

&nbsp;</pre>

<table border="1">
    <tbody>
        <tr>
            <td>100</td>
        </tr>
    </tbody>
</table>

表border=“1”
tr
td100/td
/tr
/桌子
显示数据库中数据的html表单:

当我打开这个表单时,我看到空代码块,所有html代码都在pre块之外,我看到的是一个真实的表,而不是html标记

如果单击“源”按钮,我会看到相同的结果–表标记不在“pre”标记内:

html = "<p>Content comes here</p>\r\n"

100
据我所知,代码以正确的格式保存在数据库中,所以在输出或CKEditor行为中存在问题

更新:找到解决方法: 经过长时间的搜索,我在这个主题中发现了类似的问题: 所描述的解决方法帮助了我:如果我使用htmlspecialchars php函数进行输出,效果很好:


我不确定这是一个解决方法还是正确的解决方案-在这之后,即使没有“pre”块,在富模式下插入的所有标记都会显示出来。如果是-应该在CKEditor FAQ中,因为这非常令人困惑。

可能是我迟到了。但分享一个对我同样问题有效的解决方案会很好,这样它可能会帮助别人

我在使用ckeditor时遇到了类似的问题,我将用户输入保存在表中,当我想在ckeditor实例中显示保存的html时,它只会忽略html而不显示任何内容

因此,我检查了控制台上的html,发现它有
\r\n
。所以我只是删除了它们,在转义html之后,当我将其返回到
ckeditor
时,它就工作了

以下是我的ruby代码:

CKEDITOR.instaces.my_editor.setData("#{raw(html.gsub('\r\n',''))}")

它成功了。希望有帮助

编码问题。向我们展示已保存数据的示例以及如何输出数据。展示一个例子总是一个好主意:)。向我们展示编码和未编码的数据;我猜你大概有这样的想法:
我很棒

pWOO CODEZp/
。我说得对吗?即使我是,给我们看看。以及如何输出它。以及它目前的工作方式。以及你希望它如何工作。例子太棒了。谢谢你的回复。我已经添加了我的示例。正如我所看到的,问题是代码在CKEditor textarea中留下了“pre”标记,但我不明白为什么。这很奇怪。这是一个很好的例子,就我所能看到的而言,它应该是有效的。我不能直接说什么,希望其他人会看到是否有我们没有注意到的事情发生。经过长时间的搜索,我在这个主题中发现了类似的问题:。所描述的解决方法帮助了我:如果我使用htmlspecialchars函数进行输出,那么效果很好(echo htmlspecialchars($description))
CKEDITOR.instaces.my_editor.setData("#{raw(html.gsub('\r\n',''))}")