php很久没用了
你在使用哪个phpmyadmin的时候,每个字段,包括整个数据表项的字符编码格式设置对了。
设置为哪种?那要看你的PHP文档时什么编码,还有,你的php文档对应的html文件头是什么编码。任何一个出错,都会产生乱码问题。如果,你是直接用记事本编辑过PHP文档,那么,请选择,文件--另存为--下面选择保存类型以及编码格式,选utf-8
然后,要么直接在记事本中改,要么用dw打开编辑,只要是规范的html前面肯定有个<meta
charset=******">什么的,这里就改charset=utf-8",这样在phpmyadmin里也用utf-8。
当然也可以用gb2312,那样的话,按照上面步骤,每个地方都改过来。
一、phpmyadmin设置新建数据库的默认编码为gbk或utf8编码的方法1.先运行show variables like 'character%'查看本mysql的各项charset设置
其中:
character_set_database代表当前所在数据库的编码,这里是gbk
character_set_server代表默认的新建数据库编码,这里是latin1
也就是说,我的当前所在数据库编码是gbk,而如果我新建一个数据库,默认编码是latin1
2.根据character_set_database和character_set_server的值,我们就好办了。运行以下两条sql语句,即可设置完毕:
set character_set_server=gbk //设置默认新建数据库编码为gbk
alter database testdb character set utf8 //更改现有数据库编码
注意:set character_set_server=gbk只对当前连接或者查询有效。如果想新建数据库,请将create database语句写在同一查询中,否则无效
若想永久生效,将character_set_server = gbk写入mysql的配置文件/etc/my.cnf即可
二、phpmyadmin导入数据库时gbk或utf8编码的设置(解决导入数据库中文乱码问题)
1.首先确保导入的sql文件中的中文不是乱码,此sql文件可以是utf8编码也可以是gb2312编码,都没关系
2.在sql文件的最开头添加set names utf8或者gb2312(必须与你文件的编码相同,如果你想导入后是utf8,你的文件编码就要是utf8,如果你想导入后是gbk/gb2312,你的文件编码就要是gbk/gb2312)。
3.通过phpmyadmin导入界面直接导入即可
4.文件的字符集,mysql字符集,mysql连接校对等几处字符集设置可以不用管。比如我这里mysql字符集,mysql连接校对分别是latin1和utf8_general_ci,不影响我的导入后的字符集和编码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)