主题: 程序代码重新编辑,在不同浏览器标签被换成不同的代码
作者: cnrae, 发布日期: 2012-12-26 11:02:30, 浏览数: 2250

filterMode设置为false

用插入程序代码功能插入一段代码比如

<?php  ?>


入库后是正常的,显示的

&lt;?php &nbsp;?&gt;


但重新在编辑器里读出来的时候

在chrome下,代码中的&lt;和&gt;分别变成了<!--和-->

在ie9下则直接还原成了<>,而不是&lt;和&gt;


以上都是在编辑器源码模式看的结果,不使用编辑器的话,显示均正常为&lt;和&gt;



另外用插入程序代码功能,插入大段的js等代码,提交入库后,从库中查看正常

但在编辑器里重新加载的时候,就会出现代码混乱,导致显示不全等


作者: Roddy, 发布日期: 2012-12-26 14:50:54
放在textarea时escape HTML字符就可以。
回复
作者: cnrae, 发布日期: 2012-12-26 16:45:36

对整个内容K.escape吗,这个不可行哦

发现主要原因是没有经过htmlspecialchars处理的代码,再次在编辑器显示会有诸多的替换错误


很多在有后台验证的安全情况下,内容需要保留用户复制的样式,在编辑器里直接编辑的html代码等,是不能htmlspecialchars处理哦


回复
发表新帖 发表回复