现在的位置: 首页 > 综合 > 正文

国外空间乱码的解决方法

2013年02月04日 ⁄ 综合 ⁄ 共 2560字 ⁄ 字号 评论关闭

国外空间乱码的解决方法

使用GoDaddy等美国空间容易出现乱码,特别是windows空间由于access或者MS SQL等出现乱码的情况比较多。
每个人的解决方法也不一样,整理了论坛以及网上的解决办法法汇总到这里,以下方法我并未一个个进行测试请各位自己尝试。

推荐*****
在数据提取页面的第一行代码换成如下代码即可:(类似conn.asp)
<% @language=vbscript codepage=936%>

1.若是html文件(.htm .html):
在<head></head>中加上<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

2.若是PHP/cgi文件(.php .php3 .php4):
在每个PHP文件第一行加上<?header("content-Type: text/html; charset=utf-8"; ?>

3.若是asp文件(.asp .jsp):
下面言归正传,说说asp源文件在国外服务器上中文问题的解决办法:

1.首先,把您的asp源文件放在 IIS 里进行全面测试,调用每一项功能,确认它完全能够使用,并正确显示中文,并打开 *.mdb 数据库文件查看中文显示是否正常。全部通过后,做好备份文件,即可执行第二步。

2.如果,您根本不懂 asp 的话,最简单的方法是:
打开 所有 *.asp 文件,并在第一行插入 <% @language=vbscript codepage=936%>,

例外情况:
①,如果第一行是以 <%@ LANGUAGE="VBs cript" %> 开头,
则把第一行改为:<%@ codepage="936" LANGUAGE="VBs cript" %>

②,如果第一行是以 <html> 或 <script LANGUAGE="javas cript">开头,则不加入。

3.第二步完成后,再用 IIS 对每一项功能进行测试,如显示 \0\conn.asp line 1, 即为错误信息,意思是: conn.asp 源文件第一行有错,那就把 <%@ codepage="936" %> 删除即可,一些例外错误,请到http://search.microsoft.com/default.asp ;;这里,输入“错误信息”查询即可,全部功能测试可行后,即可上传至国外服务器上,进行测试。

4.方法还是:调用每一项功能,全部能正确使用并能显示中文后,再“下传”*.mdb 文件(非常重要),打开,确认能正确显示中文,大功告成。

另外在外国服务器上用ACESS2000的中文显示方法不用转化数据库ACESS2000,只需在ASP第一行加入<%@ codepage=1256 %>

###########################################################################################################
怎么解决外国空间中文显示出问题的问题
非程序生成的文字可以显示。但程序生成的文字就只有E文可以显示了。中文全是????号,这是数据库乱码引起的。

方法一:
使用 Microsoft Access 2000或者2003 打开数据库 打开数据库,选择工具菜单>数据库实用工具>转换数据库>到早期 Access 数据库版本。OK!

方法二:
后来订阅了微软的新闻组,在微软的新闻组dotnet.framework.aspplus.general中发现有讨论这
个问题的文章,方法为添加<%@ CODEPAGE = "936" %>到每一页的开头,有点类似于jsp中的
<%@ page c%>
赶紧测试了一下,果然OK!!!

例子如下面所示:
<%@ CODEPAGE = "936" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<%@ Import Namespace="System.Globalization" %>
<html>
<head>
<meta http-equiv="Content-Type" c>
</head>

方法三:(适用于asp.net)
添加一个config.web文件到
web目录下,
建立一个文件config.web,内容如下,放在WEB目录下
<configuration>
<globalization
requestencoding="utf-8"
resp
/>
</configuration>

##################################################################################################################

如果是整个网页都出现乱码的问题,就检查下页面代码里面是否在meta标签里面设定了编码。
如:<meta http-equiv="Content-Type" c/>

###########################################################################################################

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Response.CharSet = "utf-8"
Session.CodePage = 65001
%>
这些,你都加上了吗,我以前出过一些古怪的事情,原来是Response.CharSet = "utf-8"这一条没有加上。

###########################################################################################################
如果是MSSQL 数据库,插入字符时乱码
解决方法就是在要插入的中文字符的引号前加N
比如一般情况下
insert into theme(name,about) values('pusu',' 美国主机侦探');
而要想在英文版的sql server中不乱码,就必须
insert into theme(name,about) values('pusu',N' 美国主机侦探');

抱歉!评论已关闭.