您的位置:

php的mysql查询编码问题(php设置mysql编码)

本文目录一览:

php连MySQL数据库编码问题

也许是数据库的问题,我也遇到过,我用的是wampserver,界面的工具,直接点鼠标就可能建成mysql数据库,建成后导入数据,查询数据库返回面而的是乱码,我遇到的情况是这样的:

1、建库用gbk,如图。

2、导入表及数据时,默认是utf,此处要改成gbk就不是乱码了,如第图底页面,如果是默认的或是其它的字符集,能导入成功但是乱码。另外直接把sql粘贴到sql窗口,也不是乱码。

希望能帮到你,呵呵~

php+mysql编码问题

数据库表建立的时候,字符字段有字符集,关键看是选择的GB2321、UTF8等。以这个为基础,以下的几个地方都保持统一,那么数据才能插入和查询,而且不会有乱码:

一、PHP文件的编码,PHP实际上是文本文件,保存的时候是可以选择编码的,你用记事本打开选择另存为就可以看见,如果是ANSI就和前面数据库的GB2312、GBK兼容,UTF8就和UTF8一致。

二、PHP运行后浏览器页面的编码,这个也必须要一致。

三、PHP程序连接数据库之后,要运行下面的语句设置接口编码:输入mysql_query('set names gb2312');

第三条应该就是你要的答案了。

我是这么写的

?php

$link=mysql_connectlocalhost","root","root");

mysql_select_db('table',$link);

mysql_query('set names gb2312');

?

每个涉及到库的文件都会先 include 这个文件,这样就不必怕忘记编码了~

php和mysql参数编码问题

在PHP编码时加一行mysql_query('set names utf8');保证MySQL是utf8格式的,php的默认格式一般是utf8的。

急MYSQL PHP 编码问题

通过mysql命令修改:

修改数据库的字符集

mysqluse mydb

mysqlalter database mydb character set utf-8;

创建数据库指定数据库的字符集

mysqlcreate database mydb character set utf-8;

通过配置文件修改:

修改/var/lib/mysql/mydb/db.opt

default-character-set=latin1

default-collation=latin1_swedish_ci

default-character-set=utf8

default-collation=utf8_general_ci

重起MySQL:

或者查看php配置文件一般是config.php

一般就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:

mysql_query("SET NAMES UTF8"); 这个就是设置数据编码的

它相当于下面的三句指令:

SET character_set_client = utf8;

SET character_set_results = utf8;

SET character_set_connection = utf8;

用php在mysql数据库内查询中文出错(编码问题)

数据库的编码是 gbk 的,在查询的时候把中文(utf-8)转换成 gbk编码就可以了

$nickname=iconv('utf-8','gbk//TRANSLIT',$nickname);

转换后才执行查询