发布于 2016-01-03 08:46:03 | 634 次阅读 | 评论: 1 | 来源: PHPERZ

这里有新鲜出炉的CKEditor 4 开发人员指南,程序狗速度看过来!

CKEditor网页编辑器

CKEditor 即 FCKEDITOR 。FCKeditor是目前最优秀的可见即可得网页编辑器之一,它采用JavaScript编写。具备功能强大、配置容易、跨浏览器、支持多种编程语言、开源等特点。它非常流行,互联网上很容易找到相关技术文档,国内许多WEB项目和大型网站均采用了FCKeditor。


昨天,好端端的网站突然上传图片无法显示,并且无法居中,后台采用的是ckeditor。然后进入了沉思,起初以为是编辑器的问题,更换编辑器试验,还是同样的问题,显然排除了编辑器的问题。那是什么问题呢?

从编辑器的输入内容的源码分析,内容是含有引号和HTML标签的,但是提交的时候ckeditor会把预定义的字符如"<"等转换为HTML实体,入库后的内容被转换后已经被实体化了。

通过查询数据库结果得知,内容中的引号被替换掉了,成为空白,然而被出来的数据放到编辑器中还是能解释,但是样式却一塌糊涂,并且还被添加了一些其他标签。正是这些导致了前台样式错乱,导致上传图片无法显示和居中的问题。

找出原因了,接下来就是想法解决了。

此时我想到了php配置文件中的如果magic_quotes_gpc参数。果不其然,该参数处于Off关闭状态。当开启时,通过GET,POST,COOKIE传递的数据会自动被转义。

如果magic_quotes_gpc=Off; 那么字符中要带有引号(不管单引号还是双引号) ,直接写入mysql都会直接变成空白。

显然是这个问题导致,于是开启此参数magic_quotes_gpc=On。插入数据库的数据显示正常了,引号被替换为\(反斜线)。

取数据的时候使用$contents = preg_replace("/\\\\/",'"',$contents);进行替换一下,当如编辑器中即可正常显示。

至此问题解决。关于入库数据转义参数的使用后面再专门作文总结。



最新网友评论  共有(1)条评论 发布评论 返回顶部
orpn 发布于2016-03-02 14:27:50
支持(0)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务