仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2860|回复: 18
打印 上一主题 下一主题

[学习教程] PHP编程:处理phpmyadmin 乱码,撑持gb2312和utf-...

[复制链接]
深爱那片海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-16 00:27:07 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。处理   处理phpmyadmin 乱码,撑持gb2312和utf-8    群里良多PHP喜好者一向受phpmyadmin的乱码成绩困扰.我自从有了mysql-front后,我就很少利用phpmyadmin了.但每次毗连近程主机,就对照慢.形成操作方便.明天有点工夫,就下了最新的版原本研讨.
起首申明我的数据库利用情形:
phpmyadmin 版本2.7.0-pl1
(假如你利用其它版本,能够会有所分歧,请对比修正或到 这里下载 phpmyadmin 2.7.0-pl1)

mysql版本MySQL 5.0.11-beta-nt
我在之前是利用GB2312编码体例,直接写入数据库的,字符集是mysql默许的latin1
PHP5今后我写的法式都改用UTF-8编码体例了,也是直接读写的.所以字符集也应试是mysql默许的latin1
我在用PHP操作数据时 没有 利用过以下语句:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

好,入手下手吧.
把下载的ZIP包解压到www目次后翻开文件夹...很久不见,设置装备摆设文件名都从config.inc.php改成了config.default.php .
我修正了以下代码:
31行
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin-2.7.0-pl1/';
45行
$cfg['blowfish_secret'] = 'this';
71行
$cfg['Servers'][$i]['auth_type']     = 'cookie';    // Authentication method (config, http or cookie based)?
接着,阅读器翻开http://localhost/phpMyAdmin-2.7.0-pl1/ 利用root登录.language是默许的chinese simplified(zh-utf-8)
阅读一个UTF-8的表.乱码.

                               
登录/注册后可看大图

检查了html源代码,charset=utf-8
检查他的言语选择文件libraries/select_lang.lib.php
263行 'utf-8'        => 'utf8',
我用的是默许的latin1 所以,这里应试改成latin1.改好保留,刷新.胜利

                               
登录/注册后可看大图

转到一个之前用GB2312编码录入的库.是乱码.
加入.以chinese simplified(zh-gb2312)登录.各处看.乱码.

和下面一样找到libraries/select_lang.lib.php
250行 'gb2312'        => 'gb2312',
把gb2312改成latin1.保留,刷新.却不可.仍是一样.

                               
登录/注册后可看大图

很疑惑.检查了html源代码,charset仍是utf-8.不合错误呀,应试是GB2312才正常.
有意中在首页的language下拉菜单中,发明没有登录时的chinese simplified(zh-gb2312)这一栏.(下图)

                               
登录/注册后可看大图

不解,细心一对,列表项都是utf-8停止的.成绩应试在这.
找libraries/select_lang.lib.php里对应的zh-gb2312,在它前面加上一个"-utf-8"
这回有了.检查了html源代码,charset是GB2312了.

                               
登录/注册后可看大图

若何在两种言语转换呢?
我试着回到UTF-8编码的表.没错,是乱码.
转到首页.language下拉菜单当选择zh-utf-8.再看看,OK了.
试着修正,添加新数据.都没再有乱码了.
停止:我的思绪是以html的charset对比mysql的charset.
最初提示:
假如你操作表时利用过以下语句:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

那末你修正时libraries/select_lang.lib.php能够会有所分歧.多尝尝几种体例.会有纷歧样的播种.
理解动态语言的概念,运做机制,熟悉PHP语法
深爱那片海 该用户已被删除
沙发
 楼主| 发表于 2015-3-7 08:00:11 | 显示全部楼层
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-12 14:40

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表