问问题
1843 次
3 回答
2
如果您确定传递给数据库连接的数据是 unicode(并且没有被转义等),那么您的问题可能出在数据库驱动程序本身。
确保将其设置为UTF-8
。
清单
- 确保输入的数据未转义(撇号、引号等除外)
- 确保数据库驱动程序设置为以
UTF-8
编码方式发送数据(例如,对于 PDO:$dbHandle = new PDO("mysql:host=$dbHost;dbname=$dbName;charset=utf-8", $dbUser, $dbPass);
。请注意该charset
部分。 - 确保列排序规则设置为
UTF-8
兼容的编码。
于 2013-03-18T14:28:13.940 回答
1
使用:html_entity_decode
<textarea class="textarea"><?php echo html_entity_decode($text_to_show); ?></textarea>
或者可能:
<textarea class="textarea"><?php echo html_entity_decode($text_to_show, ENT_COMPAT, 'UTF-8'); ?></textarea>
确保有一些 utf8 数据库,而不是默认的 latin1。
此外,如果您使用的是 html5 doctype,请不要忘记输入:
<meta charset="utf-8">
于 2013-03-18T14:32:42.483 回答
0
在你的服务器上运行这个:
SHOW VARIABLES LIKE 'character_set%';
查看您的服务器配置为什么字符集,如果需要将其更改为UTF-8
于 2013-03-18T14:33:37.120 回答