急,急,急,PHP从数据库中读取的内容都是问号,这是怎么回事
你先去数据库看看是不是都是问号
创新互联在网站设计、网站制作、重庆APP开发公司、网站运营等方面均有出色的表现,凭借多年丰富的经验,我们会仔细了解各客户的需求而做出多方面的分析、设计、整合,为客户设计出具风格及创意性的商业解决方案,我们更提供一系列成都全网营销推广,网站制作和网站推广的服务,以推动各中小企业全面信息化,并利用创新技术帮助各行业提升企业形象和运营效率。
如果不是,就说明是网页编码的问题,你看看你数据库里面用的是什么编码,一般是GB2312或者UTF-8,(你对着网页右单击,有个编码,你换个也许就能正常显示了),然后你在代码里设置网页的编码跟数据库一样就行。
php输入数据库,显示为问号,而不是应该的中文?
新建php页面时中文显示正常,插入记录集导航条和记录集导航数据时的文字是英文,当运行预览(F12)时,IE页面出现的中文乱码,英文能正常显示;
当从php页面提交插入记录并返回页面时,显示的提交内容没有乱码,只是在Dreamweaver制作时写入的中文是乱码;
然后打开页面查看数据库,发现刚才输入的中文显示为乱码;
这个时候,我在数据库里修改刚才输入的中文并保存,这时数据库能显示的是中文,但回到在php页面运行预览(F12)时,在数据库里修改的那部分出现的是很多问号(?),其他没有修改的内容没有变化。请各位高手出手相助!该如何修改才不会乱码?
1..安装的是appserv-win32-2.5.9及Dreamweaver CS3
2..在MySQL Command Line Client输入以下命令时:
mysql SHOW CHARACTER SET;
+----------+-----------------------------+---------------------+--------+
| Charset | Description | Default collation | Maxlen |
+----------+-----------------------------+---------------------+--------+
| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 |
| dec8 | DEC West European | dec8_swedish_ci | 1 |
| cp850 | DOS West European | cp850_general_ci | 1 |
| hp8 | HP West European | hp8_english_ci | 1 |
| koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 |
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| swe7 | 7bit Swedish | swe7_swedish_ci | 1 |
| ascii | US ASCII | ascii_general_ci | 1 |
| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 |
| sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 |
| hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 |
| tis620 | TIS620 Thai | tis620_thai_ci | 1 |
| euckr | EUC-KR Korean | euckr_korean_ci | 2 |
| koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 |
| gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 |
| greek | ISO 8859-7 Greek | greek_general_ci | 1 |
| cp1250 | Windows Central European | cp1250_general_ci | 1 |
| gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 |
| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |
| armscii8 | ARMSCII-8 Armenian | armscii8_general_ci | 1 |
| utf8 | UTF-8 Unicode | utf8_general_ci | 3 |
| ucs2 | UCS-2 Unicode | ucs2_general_ci | 2 |
| cp866 | DOS Russian | cp866_general_ci | 1 |
| keybcs2 | DOS Kamenicky Czech-Slovak | keybcs2_general_ci | 1 |
| macce | Mac Central European | macce_general_ci | 1 |
| macroman | Mac West European | macroman_general_ci | 1 |
| cp852 | DOS Central European | cp852_general_ci | 1 |
| latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 |
| cp1251 | Windows Cyrillic | cp1251_general_ci | 1 |
| cp1256 | Windows Arabic | cp1256_general_ci | 1 |
| cp1257 | Windows Baltic | cp1257_general_ci | 1 |
| binary | Binary pseudo charset | binary | 1 |
| geostd8 | GEOSTD8 Georgian | geostd8_general_ci | 1 |
| cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 |
| eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 |
+----------+-----------------------------+---------------------+--------+
36 rows in set (0.00 sec)
mysql SHOW VARIABLES LIKE 'character_set_%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\AppServ\MySQL\share\charsets\ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)
mysql SHOW VARIABLES LIKE 'collation_%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
3..在Dreamweaver CS3新建php页面时有以下代码:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
4..进入页面显示:
localhost
服务器版本: 5.0.45-community-nt-log
Protocol version: 10
MySQL 字符集: UTF-8 Unicode (utf8)
MySQL 连接校对:utf8_general_ci
phpMyAdmin - 2.10.2
MySQL client version: 5.0.37
Language: 中文-Chinese simplified
其中,打开了数据库列表显示如下:
数据库 整理
mymy2012 utf8_general_ci
mysql utf8_general_ci
phpmyadmin utf8_bin
test utf8_general_ci
统计: 4 utf8_general_ci
新建php页面时中文显示正常,插入记录集导航条和记录集导航数据时的文字是英文,当运行预览(F12)时,IE页面出现的中文乱码,英文能正常显示;
当从php页面提交插入记录并返回页面时,显示的提交内容没有乱码,只是在Dreamweaver制作时写入的中文是乱码;
然后打开页面查看数据库,发现刚才输入的中文显示为乱码;
这个时候,我在数据库里修改刚才输入的中文并保存,这时数据库能显示的是中文,但回到在php页面运行预览(F12)时,在数据库里修改的那部分出现的是很多问号(?),其他没有修改的内容没有变化。请各位高手出手相助!该如何修改才不会乱码?
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数据库中的中文数据在页面上显示的是问号
第一种方法:在浏览器菜单栏中选择“查看”-编码-自动选择(或者utf8);
第二种,看看你写代码的软件中的编码类型选择了么 ,我用的是EditPlus,所以在右下角那个地方有一个utf8有时候出现你说的情况就是因为utf8变成了ANSI,双击它可以选择其他编码。希望可以帮到你
当前标题:php数据表显示问号 php数据表显示问号怎么解决
文章路径:http://lswzjz.com/article/hhegid.html