PHP+MySQL存储数据常见中文乱码问题小结

yipeiwu_com6年前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(可以用EditPlus打开设置,如下图),这样就保证了该文件也是utf-8编码。

3. 数据库中表的字段中存储中文的部分,要设置为utf8_general_ci类型。

4.PHP在连接数据库操作时,要设置操作的字段类型为utf8,设置方法如下:

mysql_connect('localhost','user','password');
mysql_select_db('db');
mysql_query("set names utf8"); //**设置字符集***
mysql_query(要执行的sql语句);

希望本文所述对大家php程序设计有所帮助。

相关文章

PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)

写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储、处理方便,但是不直观,格式化日期直观,但是处理起来不如Uni...

php+mysql+jquery实现日历签到功能

php+mysql+jquery实现日历签到功能

在网站开发过程中我们会经常用到签到功能来奖励用户积分,或者做一些其他活动。这次项目开发过程中做了日历签到,因为没有经验所有走了很多弯路,再次记录过程和步骤。 1.日历签到样式: 2.本...

PHP+MySQL+sphinx+scws实现全文检索功能详解

本文实例讲述了PHP+MySQL+sphinx+scws实现全文检索功能。分享给大家供大家参考,具体如下: 我的个人环境是PHP7.1+MariaDB10.1.23 下载安装资源包...

在php MYSQL中插入当前时间

NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。 CURDATE()以'YYYY-MM-DD'的格式返回今天...

php+mysql+ajax实现单表多字段多关键词查询的方法

php+mysql+ajax实现单表多字段多关键词查询的方法

本文实例讲述了php+mysql+ajax实现单表多字段多关键词查询的方法。分享给大家供大家参考,具体如下: 单表多字段查询在一些稍微复杂一点的查询中十分有用。这里主要利用MySQL数据...