在用PHP查询Mysql数据库时,得到的结果中的汉字是一连串的问号,这是为什么?有什么办法可以解决?
这是编码问题!
目前创新互联已为超过千家的企业提供了网站建设、域名、虚拟主机、网站托管、服务器租用、企业网站设计、昆玉网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
数据库中存的是一种编码.而你网页中使用的又是另一种编码.所以会出现乱码现象.
解决方法:更改数据库的编码,使之与网页编码一致!(用于多语言的话,最好是使用utf-8).像你数据库中已经有了数据的,就最好不要改数据库的编码了.要不然数据库中的数据会出现乱码的.那样的话,你就只能改页面的编码方式了!
mysql存储的时候是汉字,php读出来却变成了问号。
出现问号最有可能的原因是数据从数据库读取出来时没有设置传输编码。
你可以在执行sql语句之前加代码:mysql_query('set names utf8');
这样就可以了。
PHP调用数据中文显示问号!数据库正常!
无论数据库或者是页面
出现乱码
问号
空白
那基本就是编码不一致的问题。你数据库设置了什么编码
比如是UTF-8
那么你页面也设置这个编码
并且使用header("Content-Type:
text/html;
charset=utf-8");让浏览器也使用这个编码
并且在连接数据库的时候
mysql_query("SET
NAMES
utf8");
那么就不会出现乱码
问号
空白等情况了。
其实就是让数据库
页面
浏览器编码一致就可以。你检查一下。
php访问mysql数据库时,读出的数据是问号!如何解决,设置的编码方式是utf-8
两边入手,
PHP,需要设置页面编码,加一行代码:
header('Content-Type:text/html;charset=utf-8');
这样就把输出编码改为了UTF-8
但是,MySQL也要设置,那就是连接到数据库之后再加一行
mysql_query("SET
NAMES
`UTF-8`");
即可
当然,你得保证你的数据库的字符集是UTF-8
如果仍然出错,那就说明数据库的字符集配置有问题
文章题目:php数据查出来变成问号 php输出文字乱码
文章URL:http://lswzjz.com/article/dohjios.html