当前位置 : 主页 > 网络编程 > PHP >

php数据库的乱码问题怎么解决

来源:互联网 收集:自由互联 发布时间:2022-11-14
php数据库的乱码问题的解决办法:1、在网页文件head中设置编码utf8;2、PHP页面在保存的时候使用utf8编码保存;3、新建数据库时选择UTF8编码;4、通过“mysql_query(set names utf8 );”设置字符

php数据库的乱码问题的解决办法:1、在网页文件head中设置编码utf8;2、PHP页面在保存的时候使用utf8编码保存;3、新建数据库时选择UTF8编码;4、通过“mysql_query("set names 'utf8' ");”设置字符集即可。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。

php数据库的乱码问题怎么解决?

乱码问题1:用PHPmyAdmin操作MySQL数据库汉字显示正常,但用PHP网页显示MySQL数据时所有汉字都变成了?号。

症状:用PHPmyAdmin输入汉字正常,但当PHP网页显示MySQL数据时汉字就变成了?号,并且有多少个汉字就有多少个?号。

原因:没有在PHP网页中用代码告诉MySQL该以什么字符集输出汉字。

解决方法:

1.网页文件head设置编码<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />

2.PHP页面在保存的时候使用utf-8编码保存,可以用记事本或convertz802转换文件

3.在MYSQL中新建数据库的时候数据库 选择UTF-8编码既字符集 设定为 utf-8_unicode_ci(Unicode (多语言), 不区分大小写),

库里面 表table的 整理 设置为 utf-8_general_ci

表里面的每个字段的 整理 都设置为 utf-8_general_ci

4.在PHP连接数据库的时候,也就是mysql_connect()之后加入

//设置数据的字符集utf-8
mysql_query("set names 'utf8' ");
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_results=utf8");
登录后复制

注意是utf8,不是utf-8 。

如果你的网页编码是gb2312,那就是 SET NAMES GB2312。但编辑员强烈推荐网页编码、MySQL数据表字符集、PHPmyAdmin都统一使用UTF-8。

以上四点即可实现全站utf-8编码,而且在数据库中也不会有中文乱码。

乱码问题2:用PHPmyAdmin输入数据时发生错误,不让输入或出现乱码

解决方法:这是设置问题。请安装最新版PHPmyAdmin或Appserv,打开PHPmyAdmin,MySQL 字符集: UTF-8 Unicode (utf8); MySQL 连接校对应该为utf8_unicode_ci;创建新的数据库时整理一栏请也选成utf8_unicode_ci。网页字符集也最好选用utf-8。utf-8是国际标准编码,是趋势。

乱码问题3: 在本机开发好的MySQL数据表,在本机测试一切正常,但用网站空间商提供的PHPmyAdmin上传时却出现问题,上传失败。尤其是使用国外PHP空间。

解决方法:首先查看网站空间商提供的PHPmyAdmin字符集设定,确定自己所建数据表与服务商的是同一编码。在国外MySQL是不支持gb2312的,甚至最新版的Apache也不支持gb2312。如果是因为编码不统一,可以重建数据表,当然是用国际标准的UTF8。

推荐学习:《PHP视频教程》

以上就是php数据库的乱码问题怎么解决的详细内容,更多请关注自由互联其它相关文章!

【本文转自:香港服务器 http://www.1234xp.com 复制请保留原URL】
上一篇:PHP laravel怎样实现导出PDF功能
下一篇:没有了
网友评论