我有一个用php构建的小型ajax应用程序。
使用phpMyAdmin我已将mysql数据库设置为utf-8,并已将包含utf-8数据的文本文件导入其中。
在my.cnf文件中添加了character-set-server = utf8和default-character-set = utf8之后,在带有easyphp的windows机器上运行正常。
我现在尝试将其移至生产服务器,在那里我无法访问配置文件,并且不显示变音符号等字符。
是否可以在php代码(而不是配置文件)中设置一些东西来解决这个问题,或者我可以给mysql一些命令?
我尝试了ALTER DATABASE vweb_50
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin和phpMyAdmin尝试从utf8_general_ci尝试,但它没有任何区别。
答案 0 :(得分:1)
这里有几件事需要做,而且我不确定我是否正确理解你的问题,但如果我这样做,我认为大部分都可以通过PHP函数来解决 utf8_encode 和 utf8_decode :
另外,如果需要,请查看htmlentities。
答案 1 :(得分:0)
如果在整个应用程序中使用utf-8(我建议使用),则不需要utf8_encode / decode功能。你有没有检查过你的页面的编码方式?可能服务器配置为将iso-8859-1作为字符集发送,而您的测试环境发送utf-8。使用Content-Type标头设置编码:
header("Content-Type: text/html; charset=utf-8");