PHP / Apache问题与英镑符号(£)

时间:2010-01-21 17:02:46

标签: php mysql apache

我有一些文本存储在MySQL数据库中,就像这样“汤姆为她的书给了莎拉5英镑”。 直到上周一,当从网站上拉出来时,网站上显示的效果非常好,显示“汤姆给了莎拉5英镑的书”。

现在,即使我没有更改/安装/卸载/更新任何内容,它仍然停止工作。

数据库中的旧值显示为“汤姆为她的书给了莎拉5英镑”。 在将这个文本保存到数据库的表格中,它曾用于保存到数据库,因为“汤姆为她的书给了莎拉5英镑”,它现在正在保存为“汤姆给萨拉写了5张她的书”,然后显示在网站也是如此(“汤姆给了萨拉?她的书为5”)。

这会导致什么?我正拉着我的头发尝试解决这个问题。我一直在使用utf8_encode / utf8_decode并使用ISO-8859-1和UTF-8字符集进行页面设置,尽管每种方法都会产生不同的结果(例如“?5”/“£5”/“£5”/ “ 5”/“☐5”),没有一个是正确的。

问题不能是MySQL,因为我可以在phpMyAdmin中看到£sign很好,并且£符号可以在不同的Web服务器上运行。

帮助!

2 个答案:

答案 0 :(得分:3)

不要一遍又一遍地重复这一点,我只想给你留下一个链接:

UTF-8 all the way through…


如果您按照chazomaticus回答中提到的步骤进行操作,那么您的问题就会消失。

在您的特定问题中,数据库/表/字段编码可能是个问题。

答案 1 :(得分:1)

如果您的数据库设置为utf8可能不够。确保连接字符集设置为UTF8。执行此查询:'SET NAMES utf8;'