raksmart活动促销

分享

写回答

发帖

都是中文编码惹的祸!~“混血版”害我浪费了2天时间

互联网出海创业 互联网出海创业 2793 人阅读 | 9 人回复

发表于 2008-10-14 06:02:13 | 显示全部楼层 |阅读模式

最近,测试两个程序,出现莫明其妙的毛病,仔细看看程序,似乎不该出现的。那到底是什么原因呢?

比如,今天的一个程序,说得很清楚:是UTF8版本。它没有安装程序,需要用户自己将install.sql文件导入mysql数据库里建表。

导入SQL文件过程中,我发现显示出很多乱码,建立了3个表;到使用的时候,总是提示出错,最后基本不能用。

我特意看这个SQL文件果然编码不是UTF8。哎,这是程序开发者提供的,我一点儿都没动。估计是,使用记事本编写的,直接点了保存(默认是在ANSI状态)。

接下来,我只好自己解决了:将INSTALL.SQL文件转换成UTF8编码的。再导入时,不仅不显示乱码,而且还多建立了2个表(看来,使用作者提供的SQL文件,竟然少建立了2个表)。

再举一例:PHPCMS 2007 SP6 UTF8版,文章标题图片上传的时候,出来的提示菜单统统是乱码。熟悉程序的人将就用,那新手就完了,不知道提示的是什么意思。我估计程序这里使用的无组件类是BGK编码的,移植到UTF8版本的时候,没考虑中文编码的问题。

我发现了这个问题后,随便找了几个UTF8程序,打开看看,妈呀:也藏着GBK编码的文件!

因此,在这里我要:
1 希望大家共同呼吁程序开发者:从思想上要与国际编码接轨,严肃认真地对待中文编码问题,特别是UTF8版本。不要把“混血版”推给用户,浪费用户的宝贵时间。
2 与大家分享:测试或者安装一个UTF8程序的时候,要考虑并检查一下文件的中文编码是否一致,有没有暗藏的GBK文件,是不是“混血版”。
3 以上情况都发生在中国程序上,其它国家的程序没有遇到过。再说了,其它国家使用的操作系统默认的语言编码就是UTF8的国际编码,不管是哪国语言文字。

回答|共 9 个

add.c

发表于 2008-12-8 17:23:34 | 显示全部楼层

楼上说的很好  

ffnn

发表于 2008-12-8 17:46:48 | 显示全部楼层

什么是混血版

add.c

发表于 2008-12-8 17:47:36 | 显示全部楼层

回复 3# 的帖子

没仔细看

add.c

发表于 2010-1-27 11:43:26 | 显示全部楼层

很多网站程序开发的时候编码不一致经常出现乱码问题.
真应该注意一下

kingto

发表于 2010-1-27 11:50:49 | 显示全部楼层

回复 3# 的帖子

主要是数据库编码

mlmm

发表于 2010-1-28 09:40:40 | 显示全部楼层

俺从来只用帝国备份王 备份和导入数据

ffnn

发表于 2010-1-28 15:00:47 | 显示全部楼层

不用译本。
就用英文的,像drupal可以自己设置显示的名字,写成中文的就可以啦。别人也看不出来。

coroer

发表于 2010-1-28 18:24:13 | 显示全部楼层

UTF才是正道啊

ffnn

发表于 2010-1-28 19:03:26 | 显示全部楼层

我喜欢8859-1
您需要登录后才可以回帖 登录 | 注册

本版积分规则