php - 网站/数据库文本编码问题

标签 php mysql apache encoding

我们将网站从另一台服务器导入到我们的服务器。代码和数据库100%相同。 但网站上的文字编码似乎有错误。

示例: 在数据库中,“Australië”这个词是“AustraliĂŤ”,而在网站上它显示为Australi??。 我可以修复?添加 mysql_set_charset("utf8",$this->db);数据库连接后。 但随后它在数据库中显示为“AustraliŤ”,这是不正确的。我在 apache、数据库和元标记中尝试了不同的编码。

最简单的方法是更改​​数据库中的数据,但数据库中有太多数据无法执行此操作。

谁有办法解决这个问题吗?几个小时以来一直在搜索和尝试很多东西。

最佳答案

您可以尝试:

  • 将数据库中的 MySQL 连接排序规则设置为 uft8_general_ci
  • 在 PHP 文件中运行 SET NAMES 'utf8'SET COLLATION_CONNECTION=utf8_unicode_ci
  • 确保您的所有 PHP 文件均使用 UTF-8 编码保存且不包含 BOM
  • 确保表格中的单元格为 utf8_general_ci
  • 确保 MySQL 字符集为 UTF-8 Unicode (utf8)

这就是我所拥有的。通过此设置,我可以看到数据库 (phpMyAdmin) 中的所有字符,因为它们确实出现在网站本身上。

当我编码不匹配时,我遇到了类似的问题,即我通过 ISO-8859-1 编码站点将数据保存到 UTF-8 数据库...

希望这对您有帮助。

关于php - 网站/数据库文本编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9667518/

相关文章:

javascript - 管理员(管理员)和用户(编辑、作者、贡献者等)的 Wordpress 插件

php - 使用 php 计算行数的 mysql 最佳实践

node.js - NodeJS HTTP - 在 80 以外的其他端口上监听

php - 如果您有 SSL 证书,为什么不对整个站点使用 https?

php - 使用 Symfony3 组件时,Silex FormServiceProvider 无法加载类型 "form"

php - 从数据库中查询并将结果写入文本文件

php - 使用 PHP 将图像上传到文件夹,同时将描述保存到数据库

apache - Blazor/Kestrel/Apache : How to configure properly?

PHP客户端Web socket发送消息

java - 无法连接到 MySQL - Glassfish 和 Hibernate