php数据库读取中文 php读取文本文件

PHP mysql 如何将从数据中读入的中文乱码转换成中文字符?

要解决乱码首先需要知道出现乱码的原因:

成都创新互联主要从事成都做网站、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务石龙,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

一、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读取数据库中文全是问号

if ($db-server_info()'5.0.1')

{

$db-query("set names gbk2312");或者是GBK

}

把IF去掉

补充:

输出之后,你试试IE切换编码,看哪种编码能显示中文,你再把数据库编码以及页面编码调整统一。

php获取数据库中文数据显示的是?,这怎么解决,附图

首先你的php网页要是UTF-8

?php header("Content-Type:text/html;charset=UTF-8"); ?

数据库配置公共文件如下:

$host="localhost";

$db_user="root";

$db_pass="root";

$db_name="DB";

$timezone="Asia/Shanghai";

$link=mysql_connect($host,$db_user,$db_pass);

mysql_select_db($db_name,$link);

mysql_query("SET names UTF8");

header("Content-Type: text/html; charset=utf-8");

date_default_timezone_set($timezone); //北京时间


网站栏目:php数据库读取中文 php读取文本文件
浏览地址:http://ybzwz.com/article/hidhgg.html