
正文
php读取数据库中文问号,php怎么从数据库读取数据
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
PHP读MYSQL中文乱码的快速解决方法
且要求保存的文件编码方式是utf-8,这样就保证了该文件也是utf-8编码。 数据库中表的字段中存储中文的部分,要设置为utf8_general_ci类型。
这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:mysql_query(SET NAMES GBK);或mysql_query(SET NAMES GB2312);来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。
MySQL会出现中文乱码的原因不外乎下列几点:server本身设定问题,安装时使用的字符集是latin1 table的语系设定问题(包含character与collation)客户端程式(例如php)的连线语系设定问题 正如您设定的一样,建议使用UTF8,可兼容一切字符。
数据库是utf8 连接数据库进肯定要用utf8 在连接数据库文件里加上 mysql_query(set names utf8);最好PHP文件也用UTF8的。
相关问答
Q1: PHP调用数据中文显示问号!数据库正常!
1、是字符编码问题 mysql字符编码有四个级别 服务器级,数据库级,表级,字段级.前三种均为默认设置,并不代表你的字段最终会使用这三种之一字符集设置,以字段级为准。
2、if ($db-server_info()0.1){ db-query(set names gbk2312);或者是GBK } 把IF去掉 补充:输出之后,你试试IE切换编码,看哪种编码能显示中文,你再把数据库编码以及页面编码调整统一。
3、典型的编码问题。在php中mysql_connect之后,加一句:mysql_query(set names utf8, $con);用来设置一下编码。php文件的编码(一般是UTF8无BOM)也应该与数据库的编码一致。
Q2: 使用PHP查询数据库,结果当中的中文显示问号
是字符编码问题 mysql字符编码有四个级别 服务器级,数据库级,表级,字段级.前三种均为默认设置,并不代表你的字段最终会使用这三种之一字符集设置,以字段级为准。
无论数据库或者是页面 出现乱码 问号 空白 那基本就是编码不一致的问题。
有两个建议:因为mysql数据库默认的就是utf-8的,如果你是Window系统的话,你可以进入cms命令行对数据库进行修改编码操作命令 set names gb2312,(具体的进入命令行自己到网上查。)linux就简单了,这个就不教了,谁叫linux就是命令的天下呢。
if ($db-server_info()0.1){ db-query(set names gbk2312);或者是GBK } 把IF去掉 补充:输出之后,你试试IE切换编码,看哪种编码能显示中文,你再把数据库编码以及页面编码调整统一。
关于php读取数据库中文问号和php怎么从数据库读取数据的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








