繁体   English   中英

MySQL和奇怪字符的编码结果

[英]MySQL and encoding result of strange character

我与MySQL和将数据导入特定表之间的关系存在问题。 每当请求表单时,所有包含Unicode字符的数据都将转换为其他奇怪的字符(问号)。

我现在尝试过的内容:

  • 设置MySQL数据库/表以使用utf8_croatian_ci
  • 将元数据设置为HTML以使用utf-8编码
  • 查询SET NAMES 'utf8'
  • 将所有文件设置为通过UTF-8进行编码
  • 通过mysqli_set_charset()查询(感谢注意HAL9k)
  • 还添加了: header("Content-type: text/html; charset=utf-8");
  • 尝试编辑my.iniphp.ini以将默认字符集设置为UTF-8

将字母转换为DB:

  • č, ć转换成?, ? (HTML和DB)
  • ž被翻译成 (HTML,在数据库中为真实字符' 未翻译)

我的中继:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

代码(伪):

$con = mysqli_connect($host, $db_user, $db_pass, $db_name) or die("Error.");

// Spremanje rekorda preko UTF-8 karaktera
mysqli_query($con, "SET NAMES 'utf8'");  // ovo je bolji način :-)

$selekt = "UPDATE proizvodi SET ..
                            WHERE   slug='...'";

不要讨厌我的程序风格。 :-)干杯,谢谢。 请提出建议。

请在您的数据库/表结构中尝试

utf8_general_ci

如果这不起作用,请找到您当前的字符集,代码如下

if (!mysqli_set_charset($link, "utf8")) {
        printf("Error loading character set utf8: %s\n", mysqli_error($link));
    } else {
        printf("Current character set: %s\n", mysqli_character_set_name($link));
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM