鸿 网 互 联 www.68idc.cn

Coldfusion MX技巧精华收集(1)第1/5页

来源:互联网 作者:佚名 时间:2015-08-10 07:02
Coldfusion 结合 Access 中文显示问题 作者: Kyle 12/11/02 内容: 首先,在每一页要传递和处理中文的页面顶部加上如下代码(也可以放在application.cfm里,但在有些情况下会有问题): cfprocessingdirective pageencoding="gb2312" cfcontent type="text/htm
Coldfusion 结合 Access 中文显示问题
作者: Kyle 12/11/02

内容:

首先,在每一页要传递和处理中文的页面顶部加上如下代码(也可以放在application.cfm里,但在有些情况下会有问题):

<cfprocessingdirective pageencoding="gb2312">
<cfcontent type="text/html; charset=gb2312">
<cfset setEncoding("URL", "gb2312")>
<cfset setEncoding("Form", "gb2312")>

注:如果你使用Dreamweaver MX,可以在菜单Insert里用CFPageEncoding来插入以上代码(确认你的Windows系统的地域设置是简体中文)。

以上步骤无论你是否使用数据库,只要要处理中文变量都需要的。

下面来解决Ms Access 的问题。
CFMX的ODBC service, 和ODBC Socket Driver的缺省配置不支持双字节字符,所以就算你加上了以上的代码只是解决了CFMX处理中文的问题,所有传到ODBC的中文还是会有问题,要让ODBC service和ODBC Socket Driver支持中文,必须修改其缺省模式,方法如下:

确认系统services里ColdFusion MX ODBC Agent 和 ColdFusion MX ODBC Server services两个服务起来了。

找到你的cfmx安装的路径,如果是c:\Cfusionmx 的话在dos提示符下运行这行命令

c:/cfusionmx/db/slserver32/admin/setcp.bat OS (注意OS是大写)

成功的话,会有如下提示:

DataDirect SequeLink Manager Version 5.2 (build 0092)
(c) Copyright 1995-2000 MERANT, Inc., All rights reserved


然后把ColdFusion MX ODBC Agent 和 ColdFusion MX ODBC Server services两个服务重新激活,或把系统重开。

这时在ms access里用中文就真的没问题了 以上方法在在winnt4+cfmx+access97 和win2k server+cfmx+access2002上均成功。

注:如果要恢复原来的设置运行如下命令:
c:/cfusionmx/db/slserver32/admin/setcp.bat default

要看例子在这里
http://vvjohn.dyndns.org:8500/study/chinese.cfm
其它一些关于在cfmx中中文要注意的地方
cfmx 不允许用中文做文件名
当然更不能在cfinclude等中使用带中文的文件名。
不能用使用Encrypt和Decrypt来处理中文

网友评论
<