论坛首页 综合技术论坛

Mysql乱码的问题正困扰着我……

浏览 4507 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-04  

  Mysql数据库,有一个表中的字段是varchar(50),存储的是中文内容,我用PHP读取该字段内容,显示正常;我用ASP读取该字段,中文显示为乱码(显示:??????); 我改用DELPHI读取该字段同样显示乱码。郁闷中……

  我在my.ini中已经设置了:default-character-set=gbk

  我在ASP中也设置了:meta http-equiv="Content-Type" content="text/html; charset=gb2312 <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

  但问题依旧没能解决,只能先收工,清醒一下头脑再找方法,郁闷。

  

   发表时间:2007-07-04  
1、连接的时候,连接字符串中加charset=gbk
2、连接后,第一件事情是;
   mysql_query("SET NAMES 'gbk'", $this->LinkID);
3、所有的文件,不要使用utf-8保存,都用ansi保存
0 请登录后投票
   发表时间:2007-07-05  
所有文件用gbk保存可能更好些。如果里面写中文怎么办?
0 请登录后投票
   发表时间:2007-07-06  
我的个人经验

有关数据库的设置一律为utf8

如果需要 转换的 临时用 "set names gbk"即可

走了一些弯路....
0 请登录后投票
   发表时间:2007-07-06  
outrace 写道

3、所有的文件,不要使用utf-8保存,都用ansi保存



这个不是太明白,是否可以解释一下呢?

一直以来所有的项目(web项目)相关的文件编码都是用的utf-8,数据库也是utf-8。
以乎只是文件大一点点,并没有发现其它的缺点啊?
当然好处就不用说了......
0 请登录后投票
   发表时间:2007-07-06  
如果你文件都是utf-8
那么数据库建议也使用utf-8
这样是最好的。可以省去很多麻烦事情。

如果你文件使用的是utf-8而数据库用gbk
则文件中使用的汉字,需要进行转换(参考iconv 函数)
然后再写入数据库。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics