请选择 进入手机版 | 继续访问电脑版
查看: 749|回复: 25

[织梦] dedecms织梦gbk数据库不转码改造MIP过程

[复制链接]
发表于 2016-11-5 23:16:38 | 显示全部楼层 |阅读模式
本帖最后由 fuzyhw 于 2016-11-21 19:30 编辑

dedecms织梦gbk数据库不转码改造MIP过程,数据库主程序保持不变,新弄个二级域名把模板编码改成utf-8,模板改造方式论坛里有很多,这里就不介绍,复制arc.archives.class.php,arc.listview.class.php,arc.partview.class.php这3个文件到mip目录下,然后 打开/include/dedetag.class.php文件,定位到function Display()    {
        echo $this->GetResult();
    }这这下面添加  function Displaymip()
    {
                 $html=$this->GetResult();
         $html=str_replace('<metacharset="gb2312">','<metacharset="utf-8">',iconv('gbk','utf-8//ignore',$html));
        echo $html;
    }
接下来修改arc.archives.class.php,arc.listview.class.php,arc.partview.class.php这3个文件,先打开 arc.archives.class.php文件,在第605行把  function display()修改成 function Displaymip,再打开arc.partview.class.php和arc.archives.class.php分别修改function display()为 function Displaymip,接下来修改index.php,list.php,view.php这3个文件,把$arc->Display();改成$arc->Displaymip();,还要记得把3个输出文件转换编码成utf-8,模板也要。现在打开页面测试看看有没有乱码,如果没有那么恭喜你改造成功。
以上方法思路来自hscd521版主,适用于动态改装,然后伪静态输出,生成静态的方法类似,自己研究。


发表于 2016-11-6 08:41:59 | 显示全部楼层
是的,数据库不变可以再做一个utf模板一样的
回复 支持 反对

使用道具 举报

发表于 2016-11-6 08:53:02 | 显示全部楼层
你想得太简单了,这样做下来会发现生成的页面一半(模板中文)是正常,一半(标签调用数据库中文)是乱码
回复 支持 反对

使用道具 举报

发表于 2016-11-6 10:21:16 | 显示全部楼层
感觉会有副作用
回复 支持 反对

使用道具 举报

发表于 2016-11-6 10:49:05 | 显示全部楼层
看看,来学习知识了
回复 支持 反对

使用道具 举报

发表于 2016-11-6 10:52:54 | 显示全部楼层
新弄个二级域名,模板弄成utf8  但是你数据库还是gbk的啊?
回复 支持 反对

使用道具 举报

发表于 2016-11-6 11:12:35 | 显示全部楼层
看看怎么用!
回复 支持 反对

使用道具 举报

发表于 2016-11-6 12:13:49 | 显示全部楼层
有进步,想法简单
回复 支持 反对

使用道具 举报

发表于 2016-11-6 18:55:48 | 显示全部楼层
好像会乱码吧,内容。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-6 21:37:14 | 显示全部楼层
内容一般不会出现乱码的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|Baidu Inc.

GMT+8, 2017-6-27 08:21 , Processed in 0.226164 second(s), 11 queries .

Powered by Discuz! X3.2

© 2001-2011 Comsenz Inc.

返回顶部