织梦后台系统设置在PHP5.4环境中不能保存中文参数的解决方法
在没用PHP5.4的环境做Dede后台的时候,织梦58一直没有遇到这个问题,昨天上传一个新的模版到空间去测试发现后台的系统基本参数设置中所有的中文内容都无法保存,关于这个问题,其实以前也听说过,知识一直没有遇到,这是因为网站编码的问题,UTF-8版本的织梦后台在PHP5.4环境下没有这个问题,只有GBK版本的后台才会出现这个问题,所以需要给表单中的中文转码踩能解决这个问题。
一、后台基本参数无法保存中文的解决方法:
打开dede\templets\sys_info.htm,查找代码(大概在182行和192行,注意有两处)
htmlspecialchars($row['value'])
都替换成:
htmlspecialchars($row['value'],ENT_COMPAT ,'GB2312')
如果还发现有其他页面也有这个问题,同理,打开对应的模版文件,搜索相同字符再替换即可解决。
二、编辑器的中文无法保存的解决方法:
打开include/ckeditor/ckeditor_php5.php,查找代码(大概在第137行)
dede_htmlspecialchars($value)
修改成
dede_htmlspecialchars($value, ENT_COMPAT, 'GB2312' )
三、文章发布页标签不显示的解决方法:
打开dede/article_add.php 和 dede/article_edit.php,查找代码(分别在第101行和第108行)
dede_htmlspecialchars(cn_substrR($title,$cfg_title_maxlen))
均改为:
dede_htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312')
四、中文tag无法显示的解决方法:
打开 dede/templets/tags_main.htm,查找代码(大概在第82行)
htmlspecialchars($fields['tag'])
修改为:
htmlspecialchars($fields['tag'],ENT_COMPAT ,'GB2312')
以上四个解决方法基本能搞定gbk版本的Dede后台在PHP5.4环境下不显示中文的问题,其实就是加了一个转码而已,原理很简单,如果还有其他什么地方的问题,可以参考此方法做类似修改。
- 上一篇:织梦实现在网站顶部显示会员登录信息
- 下一篇:织梦文章页实现点赞功能(非插件)
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ(984818011)进行交流。
- 织梦dede首页列表页获取文章对应的tag标签
- 织梦dede导航栏目顶级和二级判断二级输出不同url
- 织梦dede标签array runphp静态生成乱码BUG解决方法
- 织梦dede如何禁止会员发布文章内容带超链接
- 织梦ajax跨域提交自定义表单和跨域验证码问题
- 织梦CMS MIP文章内容页图片适配百度MIP规范
- 织梦CMS时间格式实现XX秒前、XX分钟前、XX天前
- 织梦DedeCMS更新系统缓存增加清理沉余缓存的功能
- 织梦CMS让channelartlist标签支持currentstyle属性的
- 织梦dede自带编辑器替换百度ueditor编辑器
- 织梦DEDECMS整站动态化或整站静态化设置方法
- 织梦dede 模板路径templets目录都有什么?