我有一个数据库,有球员的名字(它的统计数据库的游戏),但当我与mysqli查询获取球员的名字,我得到一些奇怪的结果。
例如字符"Α†Ω"显示为"? ? ?"。
- 当我在phpmyadmin中打开表时,字符显示正确
- html内容类型是utf-8(我甚至从phpmyadmin复制元只是为了确保。)
- 数据库和它的表utf8_general_ci
我怎么做才能正确显示这些(和其他)字符?
您必须将连接字符集设置为utf8。
执行以下功能:http://php.net/manual/en/mysqli.set-charset.php
或者执行以下查询:
SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8
在客户端从数据库中获取结果。您必须指定有关连接字符集。所以最好在mysql配置文件中提到字符集。连接成功后,编写以下代码行:
mysqli_set_charset($con,"utf8"); // Change character set to utf8
使用mysqli,您必须在建立连接后运行以下代码:
mysqli_set_charset($conn, "utf8");
您需要设置php连接的字符集。在连接到数据库后输入以下代码:
mysql_query("SET NAMES utf8");