PHP+MySQL存储数据出现中文乱码的问题

  1. PHP+MySQL出现中文乱码的缘由。php

    1. MYSQL数据库的编码是utf8,与PHP网页的编码格式不一致,就会形成MYSQL中的中文乱码。html

    2. 使用MYSQL中建立表、或者选择字段时设置的类型不是utf8,而网页编码不是utf8,也可能形成MYSQL中文乱码.mysql

    3. PHP页面的字符集与数据库的编码不一致。sql

    4. PHP链接MYSQL数据库,操做是设定的语句指定的编码和页面编码,PHP页面编码不一致。数据库

    5. 用户提交的HTML页面编码,和显示数据的页面编码不一致 ,就确定会形成PHP页面乱码.ui

  2. 怎么解决中文乱码的问题。编码

    1. 网页编码设置。通常在HTML代码中的文件头<html>中加入属性:3d

    <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″> htm

    保证,网页是"utf-8"编码。blog

    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;”); //**设置字符集***

    PHP+MySQL存储数据出现中文乱码的问题
  3. 实例对比。经过上面的分析,咱们按照解决方案,获得了正确的中文编码存储在MySQL中,效果以下图所示:

    PHP+MySQL存储数据出现中文乱码的问题
    PHP+MySQL存储数据出现中文乱码的问题
相关文章
相关标签/搜索