RSS
热门关键字:  虚拟主机技术  vps团购  discuz架构  虚拟主机团购  curl
当前位置 :| 团购首页>网站编程>MySql>

mysql乱码的解决办法

来源: 作者: 时间:2008-07-30 Tag:php   mysql   乱码   点击:

从MySQL 4.1开始引入的多语言支持确实很棒, 而且一些特性已经超过了其他的数据库系统. 不过在测试过程中发现使用适用于MySQL 4.1之前的PHP语句操作MySQL数据库会造成乱码, 即使是设置过了表字符集也是如此.
MySQL 4.1的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation). 对于字符集的支持细化到四个层次: 服务器(server), 数据库(database), 数据表(table)和连接(connection).

当我们按照原来的方式通过PHP存取MySQL数据库时, 就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询, 你会发现存入数据库的仍然是乱码.
其实简单的方法是通过phpMyAdmin来设置.
设置下面几项:
1: 语言设置为 chinese (zh- utf-8)
2: MySQL 字符集: UTF-8 Unicode  (utf8)
3: MySQL 连接校对 :  utf8_general_ci
4: 新增数据库和数据表的时候, 整理项选择 utf8_general_ci
通过以上设置, 在phpMyAdmin中操作和查询的时候, 中文字符都不会乱码了.
但是你会发现, 在php程序中用以前的sql语句查询出来的结果还是乱码, 问题就出在connection连接层上.
解决方法是在成功连接数据库之后, 发送一句查询语句:
1: $this->LinkID = @ mysql_connect($this->Host , $this->User,  $this->Password);
2: @ mysql_query('SET NAMES 'utf8'' , $this->LinkID);

此出 UTF8设置成你的程序的字符集,要与mysql对应.


 


    由于各种原因,我们无法获知[mysql乱码的解决办法]原创作者,如侵犯了您的版权,请您及时联系我们!
上一篇:没有了
下一篇:没有了
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册