首页 > 技术交流 > 解决ASP程序同一站点有UTF-8编码的,又有GB2312出现乱码
解决ASP程序同一站点有UTF-8编码的,又有GB2312出现乱码 2011-11-1

 今天旦可韵服装公司打电话过来就后台出现乱码问题,只有点了订单管理后才会出现乱码情况,看了一下他们的编码发现网站是用utf8编码制作的,而且他们的老系统是用gb2312编码的,所以只要一进入gb2312编码的网页再返回就会出现utf8页面乱码问题。

百度了许久终于找到了个解决方案:

    ASP程序在同一个站点中,如果出现UTF-8编码的程序,又有GB2312的程序,在浏览完UTF-8编码的页面后,再浏览GB2312的页面,GB2312编码的页面就会出现乱码.

    出现这样的问题,可能是:当你浏览UTF-8编码的时候,服务器默认用UTF-8的引擎来输出html,当你用再浏览GB2312的页面时,它还是用UTF-8来输出本应是GB2312编码的页面.所以会乱码.

    如果要将他们转为同一种编码可能会很痛苦. 

    还有一种解决方法是:不用作任何转换,保持原来的编码不变.在Utf-8程序的第一行加上:
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <%Session.CodePage=65001%>           
     
     在GB2312程序的第一行加上
     <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> 
     <%Session.CodePage=936%>   

     这样就可以了,当然如果你的所有程序都在第一行include 一个文件的话,把上面的代码放在被include 的文件第一行就马上解决问题了。

上一篇:FlowPlayer播放器使用 下一篇:ad5制作的dedecms视频教程