我有一个 mysql 数据库表来存储国家名称和货币符号 - CHARSET 已正确设置为 UTF8。
这是插入到表中的示例数据
插入国家(国家名称、货币名称、货币代码、货币符号)值 ('UK','Pounds','GBP','£');
当我查看数据库时 - 英镑符号看起来很好 - 但是当我从数据库中检索它并将其显示在网站上时 - 一个奇怪的方形符号出现了,里面有一个问号而不是英镑符号。
在 my.cnf 中编辑 - 字符集设置为 latin1 - 我将其更改为 utf8 - 然后我以 root 身份登录并运行 \s - 它返回
服务器字符集:utf8 客户端字符集:utf8
排序规则
-- 数据库 选择 default_collation_name FROM information_schema.schema WHERE schema_name = 'swipe_prod'; 这不会返回任何东西 - 桌子 SELECT table_collation FROM information_schema.tables WHERE TABLE_NAME = '国家'; 这返回 utf8_general_ci - 列 选择 collation_name FROM information_schema.columns WHERE TABLE_NAME = '国家'; 这返回 7 行,但都有 null 或 utf8_general_ci
PHP代码
<?php $con = mysql_connect("localhost","user","123456"); mysql_select_db("swipe_db", $con); $result = mysql_query("SELECT * FROM country where country_name='UK'"); 而($row = mysql_fetch_array($result)) { 回声 $row['country_name'] 。“”。$row['currency_symbol']; } mysql_close($con); ?>
请指教 谢谢