我在共享托管服务器上有一个MySQL数据库,默认情况下将其设置为latin1编码,但具有包含外来字符的字符串值。
当我在命令行中查询数据库时,这些值正确显示,即“ DomainCuvée”。但是,当我通过php / webpage访问时,该值显示为“ Domaine Cuv \ u00e9e”。
我的字符集/排序规则结果如下。
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
+--------------------------+-------------------+
| Variable_name | Value |
+--------------------------+-------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| collation_connection | latin1_swedish_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
我无法访问my.cnf文件,因此无法设置character_set值。有什么办法可以通过查询或更改设置来显示正确的字符?我已经尝试过更改phpmyadmin,但无济于事。
为了澄清,下面的链接没有回答我的问题,因为我没有使用php连接到我的数据库。我在大多数数据连接中都使用核心数据,因此无法从客户端修改字符集。