3

我试图在从 mySQL (utf8_general_ci) 拉出的下拉框中显示 utf8 字符,这些字符返回为带有 ? 在中间。

我试过 htmlspecialchars 和 htmlentities。它返回一个空白字符串。站点的字符集也设置为 utf-8。

非常感谢。

4

3 回答 3

2

尝试使用utf8_encode()函数,看看它是否有效。

于 2012-12-06T03:56:06.307 回答
0
$inn_qu=mysql_query("select * from catagory where ct_id='$id' order by c_id");
      while($re=mysql_fetch_array($inn_qu)){
          $trs=get_html_translation_table(HTML_ENTITIES);
          $str=$re['c_rate'];
          $encode=strtr($str,$trs)
于 2012-12-06T04:20:54.107 回答
0

设置服务器的字符集:

mysql> SET character_set_database = 'utf8mb4';
mysql> SET character_set_server = 'utf8mb4';

查看与字符集相关的所有 MySQL 变量:


mysql> SHOW VARIABLES LIKE '%character_set%';

要更改PHP应用程序中的字符集:

/* change character set to utf8mb4 */
if (!($mysqli->[set_charset][1]("utf8mb4")))
{
    printf("Error loading character set utf8mb4: %s\n", $mysqli->error);

    exit();
}
else
{
    printf("Current character set: %s\n", $mysqli->character_set_name());
}

参考:

于 2021-05-10T09:30:36.490 回答