mysql4.0升级到5.0,phpmyadmin乱码,网站程序正常,helpme!!! mysql4.0升级到5.0,phpmyadmin乱码,网站程序正常这只能说明phpmyadmin在处理上有问题!!!因为phpmyadmin要使用漏洞百出的mb_string扩展 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没有发现 PHP 的扩展设置mbstring, 而当前系统好像在使用宽字符集。没有 mbstring 扩展的 phpMyAdmin 不能正确识别字符串,可能产生不可意料的结果.我没装mb_string,不想编译mysql5.0怎样查看mysql4.0有没有装mb_string呢?我用的是linux 这个还是character set的问题。phpmyadmin是把客户端设为utf8的。你的库里的字段如果是latin1,它做latin1到utf8的转换,这个结果不可能是正确中文。而你的程序不受影响是因为两个(>128)的latin1的字符是能够拼成一个gbk汉字的。你需要把数据库character set设为gbk或utf8,根据你的客户端在程序里连接后使用set names xxx如果需要,可能要重新导入一下原有数据 这不是mb_string的问题pma在mysql4.1版本后使用utf-8编码,而数据库内是gb2312当然乱了可以用其他的管理工具ss mysql> show variables like "%char%";+--------------------------+----------------------------------------+| Variable_name | Value |+--------------------------+----------------------------------------+| character_set_client | latin1 || character_set_connection | latin1 || character_set_database | latin1 || character_set_results | latin1 || character_set_server | latin1 || character_set_system | utf8 || character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |+--------------------------+----------------------------------------+7 rows in set (0.02 sec)mysql> 请大侠看看,咋办? mysql> show variables like "%colla%";+----------------------+-------------------+| Variable_name | Value |+----------------------+-------------------+| collation_connection | latin1_swedish_ci || collation_database | latin1_swedish_ci || collation_server | latin1_swedish_ci |+----------------------+-------------------+3 rows in set (0.00 sec)mysql> 还有这个 character_set_database | latin1 => gbk看所有varchar的字段后面的character set都应该变成一样的gbk了程序中连接之后 执行 ‘set names gbk'在执行这个之后 collation_connection 、client、result的character set都应该是gbk了。(要看的话,要在程序里做 show variables , 在外面做不一样,是基于连接的)这个时候看程序运行的结果,如果不对,数据要重新导入一下。不知道你目前导入导出数据是如何做的,也要注意character set的问题,要不导进去编码就不对。这些搞好了,phpmyadmin应该就对了 最好的办法是:把phpmyadmin的lang/chinese_simplified-gb2312.inc.php覆盖chinese_simplified-utf-8.inc.php php 点阵画图小集合 session跨页面就失效,我疯了。 请问PHP可不可以接合“条码扫描仪”读取数据库? mysql中sum的优化和索引问题 CLI的PHP代码如何加密呢?~~~~~~~~ 在线等~~~~~ 老phper进。 求救菜鸟问题:怎样配置php服务! 公司的域名换了以后出现了大问题!!!救急 如何查询50以后的数据 请教:php图像识别,怎么讲拍的证件照片缩放到实际大小然后打印? fsockopen通信过程中反复fputs,fgets的问题[我没招了] 怎么做到关闭浏览器就自动清掉cookies
phpmyadmin是把客户端设为utf8的。
你的库里的字段如果是latin1,它做latin1到utf8的转换,这个结果不可能是正确中文。
而你的程序不受影响是因为两个(>128)的latin1的字符是能够拼成一个gbk汉字的。你需要把数据库character set设为gbk或utf8,
根据你的客户端在程序里连接后使用set names xxx
如果需要,可能要重新导入一下原有数据
pma在mysql4.1版本后使用utf-8编码,而数据库内是gb2312当然乱了
可以用其他的管理工具ss
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
7 rows in set (0.02 sec)mysql> 请大侠看看,咋办?
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
3 rows in set (0.00 sec)mysql> 还有这个
看所有varchar的字段后面的character set都应该变成一样的gbk了程序中连接之后 执行 ‘set names gbk'
在执行这个之后 collation_connection 、client、result的character set都应该是gbk了。
(要看的话,要在程序里做 show variables , 在外面做不一样,是基于连接的)这个时候看程序运行的结果,如果不对,数据要重新导入一下。
不知道你目前导入导出数据是如何做的,也要注意character set的问题,要不导进去编码就不对。这些搞好了,phpmyadmin应该就对了
把phpmyadmin的lang/chinese_simplified-gb2312.inc.php覆盖chinese_simplified-utf-8.inc.php