1

我有一个 mysql 数据库以希腊字符存储一些字段。在我的 html 中,我有 charset=utf-8 并且我的数据库列是用编码 utf_general_ci 定义的。但到目前为止我还没有设置连接编码。结果,我有一个不能很好地显示希腊字符的数据库,但是当用 PHP 回读时,一切都显示得很好。

现在我尝试以正确的方式做到这一点,所以我也在我的数据库函数中添加了。

     $mysqli->set_charset("utf8");

这对新条目非常有用。

但是对于现有条目,问题是当我在 PHP 中读取数据时,它会出现乱码,因为现在连接编码已经改变。

有没有办法修复我的数据并使它们再次有用?我可以继续我以前的工作方式,但我知道这是错误的,将来会给我带来更多问题。

4

1 回答 1

0

我解决了这个问题如下:

  1. 在 PHP 脚本中,像我现在一样检索信息,即不设置连接。这样,错误将被反转和纠正,并且在您的 php 文件中,您将拥有正确的 utf-8 格式的字符。
  2. 在同一个 PHP 脚本中,通过将连接设置为 utf-8 来写回信息,此时正确的字符在数据库中
  3. 从现在开始,我将您网站的所有读/写功能都更改为使用 utf-8
于 2013-05-24T04:54:09.937 回答