PHP, MySQL,字符不能正确显示


PHP, MySQL, characters not being displayed correctly.

我有一个数据库,有球员的名字(它的统计数据库的游戏),但当我与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");