所以我正在使用 FCKeditor,我遇到的问题是,当用户编写文档时,有时信息是从 Word 中复制的,有时是直接在编辑器中写入的,有时则可以两种方式完成。这让我在数据库中留下的是许多打开且从未关闭的标签。这大大打乱了我的布局,我正在努力寻找解决方案。
我将配置文件更改为粘贴为纯文本,我认为这会阻止 Word 格式传输,但它仍在这样做。
所以现在我想找出一种方法来搜索开始标签并在信息发送到数据库之前删除它们。还是我缺少一些 FCKeditor 功能/配置选项来帮助我?
关于我应该如何进行的任何建议?
谢谢
列维
最佳答案
作为一种安全预防措施,可以解决与安全相关的问题(例如 <script>
标签被用户插入——您可能不想要)问题(例如未关闭的标签),您可以使用像HTMLPurifier 这样的工具在您的服务器上,在您从浏览器接收到的内容上。
当然,这并不能解决第一个问题,即用户可以在 FCKEditor 中输入任何内容;但它将确保您的 HTML 既有效又安全。
实际上,即使 FCKEditor 没有为您提供无效的 HTML,您仍然可以使用 HTMLPurifier,只是为了安全。
这个想法是你提供一个列表:
- 允许的标签
- 允许这些标签的属性
作为返回,HTMLPurifier 为您提供干净有效的 HTML。
关于php - FCKeditor 留下了很多打开的标签 - 如何删除它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1430490/