本文目录一览:
- 1、PHP mysql 如何将从数据中读入的中文乱码转换成中文字符?
- 2、php向mysql写入数据中文显示怎么解决
- 3、用PHP向mysql数据库中写入中文汉字为什么显示不出来?我已经设置成gb2312了
- 4、用php向mysql中插入中文汉字,数据库中显示乱码,但用php页面读取时是正常的汉字。百度的方法都不行,急
- 5、求大神解决PHP录入MySQL中的汉字是乱码!本人已经试过网上无数的方法,无奈乱码依旧!
- 6、PHP的MySQL中,中文显示这样,应该怎样设置?
PHP mysql 如何将从数据中读入的中文乱码转换成中文字符?
要解决乱码首先需要知道出现乱码的原因:
一、PHP+MySQL出现中文乱码的原因。
1. MYSQL数据库的编码是utf8,与PHP网页的编码格式不一致,就会造成MYSQL中的中文乱码。
2. 使用MYSQL中创建表、或者选择字段时设置的类型不是utf8,而网页编码不是utf8,也可能造成MYSQL中文乱码.
3. PHP页面的字符集与数据库的编码不一致。
4. PHP连接MYSQL数据库,操作是设定的语句指定的编码和页面编码,PHP页面编码不一致。
5. 用户提交的HTML页面编码,和显示数据的页面编码不一致 ,就肯定会造成PHP页面乱码.
二、解决中文乱码:
1. 网页编码设置。一般在HTML代码中的文件头html中加入属性:
meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″
保证,网页是"utf-8"编码。
2. PHP代码设置。在php代码的开始部分加入以下代码:
header(”Content-type: text/html;charset=utf-8″);
且要求保存的文件编码方式是utf-8,这样就保证了该文件也是utf-8编码。
3. 数据库中表的字段中存储中文的部分,要设置为utf8_general_ci类型。
4.PHP在连接数据库操作时,要设置操作的字段类型为utf8,设置方法如下:
mysql_connect(’localhost’,'user’,'password’);mysql_select_db(’db’);mysql_query(”set names utf8;”); //**设置字符集***
php向mysql写入数据中文显示怎么解决
先检查MYSQL数据库的编码格式,那我们先找到MYSQL数据的安装目录,找到my.ini文件:
打开my.ini文件:找到default-character-set,把它设置为utf8,一共要设置2个地方
然后在重启MYSQL数据,找到服务里面
然后在设置我们网页的编码格式,设置为UTF-8
meta http-equiv="Content-Type" content="text/html; charset=utf-8"
5
在PHP文件中设置,设置为utf8
mysql_query("set names 'utf8'");
用PHP向mysql数据库中写入中文汉字为什么显示不出来?我已经设置成gb2312了
PHP与数据库的编码应一致
1. 修改mysql配置文件my.ini或my.cnf,mysql最好用utf8编码
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
default-storage-engine=MyISAM
在[mysqld]下加入:
default-collation=utf8_bin
init_connect='SET NAMES utf8'
2. 在需要做数据库操作的php程序前加mysql_query("set names
'编码'");,编码和php编码一致,如果php编码是gb2312那mysql编码就是gb2312,如果是utf-8那mysql编码就是 utf8,这样插入或检索数据时就不会出现乱码了
用php向mysql中插入中文汉字,数据库中显示乱码,但用php页面读取时是正常的汉字。百度的方法都不行,急
文件编码必须是utf-8
设置编码utf8不要加引号
mysql_query('set names utf8');就可以了
求大神解决PHP录入MySQL中的汉字是乱码!本人已经试过网上无数的方法,无奈乱码依旧!
以下几步:
1修改mysql的my.ini文件,default-character-set=编码
2建库时注意你所选择的编码集,,
3看看你的库结构是不是你想要的编码集
4建表时设定你的编码
5插入的时候先设置
set
names
utf8;
6mysql连接字符串url后加上编码就行啦,就像这样
jdbc:mysql://192.168.1.111:3306/test?useUnicode=truecharacterEncoding=gb2312
以上都看完不行
建议重装mysql
因为mysql
默认的latin1.安装是不进行选择默认的是拉丁语
无法识别中文的!
PHP的MySQL中,中文显示这样,应该怎样设置?
① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql
② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……
具体操作为:打开mysql安装目录下的myini.tet;
找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;
③ 重启MySQL服务器,在运行窗口输入:net start mysql
④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了