php 往数据库里插入 数据,插入和读取正常显示中文,但 数据库 里显示乱码怎么破?

发布网友 发布时间:2022-04-06 04:14

我来回答

4个回答

懂视网 时间:2022-04-06 08:35

php存入数据库乱码的解决办法:1、在HTML代码中的文件头“”中加入meta属性;2、在php代码的开始部分加入header代码;3、将数据库中表的字段设置为“utf8_general_ci”类型。

推荐:《PHP视频教程》

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程序设计有所帮助。

热心网友 时间:2022-04-06 05:43

可能是代码格式不一致,你把编码格式改成“utf8”,数据库-操作-排序规则改成统一的格式试试看

热心网友 时间:2022-04-06 07:01

mysql 数据库设置编码问题~看gbk或者utf-8追问直接在数据库界面插入中文,正常显示中文啊;只是通过程序 插入的时候,显示不对……(程序读取的数据,中文正常显示)。最好说一下,怎么改(阿里云Linux)

追答你是怎么看的啊,终端命令上看的?是不是linux上没有安装中文语言?
还是通过phpmyadmin,还有可能是浏览器的编码不一致
你程序读写数据库的编码是一定的,可能是数据库的编码方式和程序的编码不一致~

热心网友 时间:2022-04-06 08:36

设置前先“set names utf8";

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com