国外虚拟主机空间乱码显示问题是个小问题,也是大问题。
在数据提取页面的第一行代码换成如下代码即可:
<% @language=vbscript codepage=936%>
1.若是html文件(.htm .html):
在<head></head>中加上<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>
2.若是PHP/cgi文件(.php .php3 .php4):
在每个PHP文件第一行加上<?header(“content-Type: text/html; charset=gb2312”; ?>

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

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

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

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

②,如果第一行是以 <html> 或 <s cript 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 打开数据库,选择工具菜单>数据库实用工具>转换数据库>到早期 Access 数据库版本。OK!

方法二:

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

例子如下面所示:
<%@ CODEPAGE = “936” %>
<%@ Import Namespace=”System.Data” %>
<%@ Import Namespace=”System.Data.ADO” %>
<%@ Import Namespace=”System.Globalization” %>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>
</head>

方法三:

添加一个config.web文件到
web目录下,
建立一个文件config.web,内容如下,放在WEB目录下
<configuration>
<globalization
requestencoding=”utf-8″
responseencoding=”utf-8″
/>
</configuration>

2 Comments

  1. 非常感谢,总算找到了解决国外主机调用MDB显示乱码的办法,方法3不行,方法2完全可以。而且可以加在conn.asp里,就不用每个asp加了。
    不知道有没有办法解决国外主机使用中文文件名的问题?因为FTP里可看到中文,但在WEB里却是404 not found.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注