所以我使用FCKeditor,我遇到的问题是,当用户写文档时,有时会从Word复制信息,有时则直接在编辑器中编写,有时可以双向完成。这让我在数据库中留下了很多标签,这些标签是开放的,永不关闭。这大大地摆脱了我的布局,我正在努力寻找解决方案。
我更改了配置文件以粘贴为纯文本,我认为这会阻止Word格式转移,它仍在执行。
所以现在我想找到一种方法来搜索开始标记并删除它们,然后才能将信息发送到数据库。或者是否有一些FCKeditor功能/配置选项我缺少帮助我?
关于我应该如何进行的任何建议?
感谢
列维
答案 0 :(得分:2)
正如安全预防措施一样,它将解决与安全相关的问题(例如用户插入的<script>
标签 - 例如 - 您可能不想要的)和演示文稿相关问题(例如非封闭标签),您可以在服务器上使用HTMLPurifier之类的工具,以及从浏览器接收的内容。
当然,这不会解决第一个问题,即用户可以在FCKEditor中输入他们想要的任何内容;但它将确保您的HTML既有效又安全。
实际上,即使FCKEditor没有为您提供无效的HTML,您仍然可以使用HTMLPurifier,只是为了安全。
您的想法是提供以下列表:
作为回报,HTMLPurifier为您提供干净且有效的HTML。
答案 1 :(得分:0)
编辑:听起来你在编辑器中遇到了一个错误。您可以尝试使用另一个,和/或使用经过的服务器端脚本并删除不匹配的div标签。
Html允许大多数标签保持打开状态。如果它打开了应该保持关闭的标签,你可以通过白色或黑名单来搜索并剥离那些服务器端。否则,您几乎不了解HTML不是XML,FCKeditor生成HTML,HTML不会验证为XML。如果它关闭了您的打印输出,请尝试将div中的FCKeditor输出包装。
否则,请包含搞乱页面布局的输入和输出的具体示例。