查看文章 |
discuz on amoeba 乱码问题解决
2009/02/01 下午 5:58
discuz 直接连接 mysql 全部ok没有乱码,但是当前面加了 amoeba 的时候就出现乱码了。 今天研究了一天。后来通过查看 mysql sql执行日志还有 amoeba sql执行日志才发现原因。 同时也发了份邮件个amoeba作者,希望能够得到回答。 discuz是通过 mysql_query("SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary, 来设置字符编码的, 而不是 set names utf8 这样来设置的, 在 amoeba服务端日志我读到,当php不执行set names utf8的时候它就会默认到 slave myql上执行一个 set names latin1,当设置了 mysql_query("SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary, 还有为什么默认一定要是 set names latin1,而不是utf8呢?这个比较严重。 最后解决问题就是 把 include/db_mysql.class.php 里的 设置编码方式改成 set names utf8 |
最近读者:

