1

我来自匈牙利,如果谈论字符编码,这会使事情变得复杂。当我编写网站代码时,我无法避免在 MySQL 中存储简单数据,这些数据通常不需要管理界面来处理。我的意思是我不会让管理员在表格中记录菜单名称。但我不得不。因为在 phpMyadmin 中记录 UTF8 属性是不可能的(或者我还没有找到解决方案)。当我通过 phpMyadmin 发送时,我的输入在 UTF8 字段中保持 ISO-8859-2 编码。如果我使用 UTF8 网页、UTF8 格式、所有 UTF 格式向数据库发送数据,我绝对没有问题。

所以我的观点是,每次我想将一些 UTF8 插入到 UTF8 编码的数据库中时,制作一个管理界面或类似的东西都是间接且耗时的。phpmyadmin 对我来说无法使用。但我不想自己编写另一个 phpmyadmin。这没有任何意义。必须有解决办法。你能帮我吗?

实际的 UTF8 属性以正确的方式展示。 标有蓝线的行已经用phpmyadmin记录了,没有存储为UTF8。

(实际 UTF8 属性显示正确。标有蓝线的行已用 phpmyadmin 记录,未存储为 UTF8。)

4

3 回答 3

4

我将在黑暗中进行一次非常疯狂的尝试:

phpMyAdmin 实际上是正确的。不起作用的是您的自定义界面,因为它没有正确设置连接编码。因此,您通过它插入的所有数据在数据库中都是混乱的,但在您的应用程序中恰好有一个干净的往返。phpMyAdmin 插入实际的 UTF-8 数据,当通过错误的连接检索时,这些数据会变得混乱。

一直到UTF -8在 Web 应用程序中从头到尾处理 Unicode

于 2013-07-25T12:32:48.633 回答
2

对于那些将来可能会发现这篇文章有同样问题的人,我在使用此查询设置连接后立即设置了连接编码:

SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'

于 2013-07-25T12:56:35.887 回答
0

我和你有完全一样的问题。过了一会儿,我找到了解决方案,在 Convert to HTML使用 utf8-to-html 在线转换器 。只需键入您的 Unicode 文本并复制结果,粘贴到您的 PHPMyadmin 中。

于 2015-08-20T03:58:12.610 回答