xheditor 内容保存时 不转义html特殊字符,xheditor编辑器上传图片(示例代码)

之前在用csdn的时候,觉得他们家的编辑器挺好用,精美,简洁,大方,功能强大。最近自己的项目也要用到编辑器,我就想起了xheditor。

0d6a1cb2c353465f944e6016696b2363.jpg

好多大网站都用到它~好棒!

我把xheditor用于文章模块,添加和修改文章,然后保存到数据库中,用text类型存储。编辑文章避免不了图文混排,那就要考虑到如何处理图片。

主要有两种方案:

把图片上传到服务器中,然后把图片的路径保存到数据库

用base64编码图片,然后再把编码后长长的一串保存到数据库中

这里主要跟大家说说第一种,因为后期还要用到正则匹配文章中的图片。

这里要注意几点:

1.默认是用html5上传

由于对html5不熟悉,导致上传的时候老是出现“上传接口出现错误的提示”;而提示原因是

“Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version。”

如下所示:

04a6effd7c77410ab2f4fd2ab1023bf9.jpg

解决的办法就是把 php.ini 中的 always_populate_raw_post_data 修改为-1 就行了;

3145f73f93114811abd6d45c3c24cf46.jpg

详细参考:http://www.cnblogs.com/luoyangcn/p/4309838.html

如果你不想要html5上传,在初始化的时候,把html5Upload改为false就行了,我这里就没有用html5上传;

2be40c9e6f494f23b2e583cf269ec014.jpg

配置好以后,后台就可以接收到上传的图片啦~

后台处理程序可以参考官方给出的demo

注意表单文件域的name 为 filedata

2.图片base64编码

xheditor是一个非常好的文本编辑器,你可以上传图片,也可以粘贴图片

粘贴图片的话,xheditor会自动帮你用 base64 编码,所以这时候你存到数据库的不是图片路径,我并不想把一长串东西保存到数据库里面,怎么做呢?

在这,把 cleanPaste 改为3,这样,就不能粘贴图片了。当然,这个cleanPaste的意思是清除粘贴的HTML代码,看看一下解析你就懂了。

参数:0(不做任何清理),1(简单清理Word),2(深入清理Word),3(强制转文本),默认为1简单清理Word

说明:若网站应用需要保留更多的Word样式效果,请设置此值为1,不过产生的HTML代码体积会大大增大

备注:1.1.4版本中新变更,原为wordDeepClean和forcePasteText两个参数

最后注意一点,xheditor 会把内容中的大于号,小于号,双引号,单引号这些通通转化为实体字符,相当于 php 中的 htmlspecialchars() 函数

参考链接:https://www.cnblogs.com/estellez/p/3977196.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值