从一个主机移动到另一个主机后显示日语时遇到问题

时间:2015-12-06 03:34:17

标签: php mysql character-encoding

我最近放弃了godaddy共享托管并转移到我的网站的VPS,该网站使用日语。以前我通过PHP将日语输入MySQL然后显示它没有任何问题。我使用cpanel备份和还原移动了网站。一切都很顺利,但数据库中的所有日文数据都不是这样的:

  

【J ???? _?[??Ž??

我在utf8编码上做了一些调试,并进行了一些更改,但我仍然无法显示它。

但是,当我从同一个PHP页面向数据库中插入新数据时,我会收到很好的日语信息。

有可能在移动中日本数据以某种方式被破坏了吗?

如果是,我可以恢复吗?

此外,定期的MySQL备份是否可以防止将来发生这种情况?如果备份和恢复损坏了我的数据(仅限日语,而不是英文部分),我对依赖备份的能力缺乏信心。

旧数据库包含日语的数据:

  

ƒJƒŒƒ“ƒ_ [,d”z,é

与我恢复cpanel时出现的情况明显不同。我尝试将其复制粘贴到新的MySQL数据库中,但仍然会出现乱码

1 个答案:

答案 0 :(得分:1)

?J???�?_?[??�z??听起来像html中<meta ...>中的错误字符集。

ƒJƒŒƒ“ƒ_[‚ð”z‚é应该是カレンダ[を配る吗?如果是,则将其编码为sjiscp932

请这样做以进一步诊断事情:

SHOW CREATE TABLE

SELECT col, hex(col) FROM tbl WHERE ...

并告诉我们您认为该文字应该是什么。

从那里,我或许可以告诉你如何解开事情。