欧洲语言的PHP和MySQL编码错误

欧洲语言的PHP和MySQL编码错误,php,mysql,utf-8,Php,Mysql,Utf 8,我想在MySQL中插入一些欧洲语言的单词。e、 gá,ó,Ö,ü(对不起,我不知道它是什么语言。也许有人能帮我修改标题。) 但它变成了一些无法阅读的东西 我尝试这个解决方案 我发现我的PHP版本是5.1.6。所以我不能使用mysql\u set\u charset Mysql字符集是utf8\u general\u ci,版本是5.0.45 如何解决此问题?数据库更改: 将数据库、表和列中的字符集更改为“UTF8”(是的!更改表字符集是不够的,必须逐列执行!我花了很长时间才弄清楚!) 将数据库

我想在MySQL中插入一些欧洲语言的单词。e、 g
á
ó
Ö
ü
(对不起,我不知道它是什么语言。也许有人能帮我修改标题。)

但它变成了一些无法阅读的东西

我尝试这个解决方案

我发现我的PHP版本是
5.1.6
。所以我不能使用
mysql\u set\u charset

Mysql字符集是
utf8\u general\u ci
,版本是
5.0.45


如何解决此问题?

数据库更改

  • 将数据库、表和列中的字符集更改为“UTF8”(是的!更改表字符集是不够的,必须逐列执行!我花了很长时间才弄清楚!)

  • 将数据库、表和列中的排序规则(真正检查每一列)更改为“utf8\u slovak\u ci”

  • 导入数据并检查它在数据库中是否正常

PHP更改


查询时,在SELECT/UPDATE语句之前使用“mysql_query('SET character_SET_results=UTF8;”);

UTF-8是您想要的。在MySQL中使用
utf8mb4.*
字符集,因为它们是真正的Unicode集。在PHP中,需要使用多字节扩展来处理数据。您还需要指定网站的编码为UTF-8,以便浏览器以UTF-8而不是ISO-8859-1发送数据。您应该更新PHP版本,您将在将来遇到主要过期函数。我没有权限更新PHP或更改MySQL字符集…..附带问题:您为什么不升级PHP版本?5.1太过时了。如果您的主机提供商是原因,请他升级PHP版本。如果他没有,就换一个供应商。如果主机提供商不想使用最新的PHP版本,我就不想在其服务器上托管任何内容。PHP5.5(更好的是5.6)作为最低要求是义务性的,但这个问题很糟糕。。。不确定您想要的标题帮助。。。欧洲的语言包括法语、西班牙语、捷克语、乌克兰语、希腊语。。。(我们不会提及阿拉伯语或汉语)因此除了UTF-8这样的Unicode字符集之外,没有其他选择。但是,您建议您已经在使用UTF-8。。。然后争辩说你的系统规范不允许你正确地完成它,这还不够。“结果”仅用于阅读;你写作也需要它。相反,执行
设置名称utf8
。试试这个,对我来说很好。