Skip to content


解决 MySQL 升级后的 Bo-blog 乱码问题

前几天换了服务器,PHP 和 MySQL 的版本都从 4 升到了 5。由于 MySQL 从 v4.1 开始对字符集的支持细化了许多,升级后的中文变成了乱码。对于 Wordpress 的处理办法,到处可以 Google 得到,只是没有在网上找到 Bo-Blog 的解决方案。那就只能自己动手了。

把 Bo-Blog (2.0.3 SP1)的目录下的文件翻了一下,找到了控制数据库连接的文件,是/inc/目录下的db.php。我找啊找啊找,在39行处找到了眼熟的一句:

mysql_query("SET NAMES 'utf8'");

唔,这条语句所在的判断是:

if ($a_result) {
            
if ($db_410=='1')
                
mysql_query("SET NAMES 'utf8'");
        
}

嗯,说明程序是先判断 MySQL 版本是否高于或等于 4.1.0,如果是则执行这条设置字符集的语句,但是,既然我是直接把 MySQL 直接升上来的,所以这条判断也没啥用了,所以直接这条语句执行好了。试着直接删掉或注释掉这句:

if ($db_410=='1')

这样,这块代码就成了:

if ($a_result) {
            
mysql_query("SET NAMES 'utf8'");
        
}

保存文件,上传。打开 Bo-Blog 一看,以前全是疑问号的乱码恢复成了漂亮的中文。

@Update:其实不用这么麻烦,直接把/data/下面的config.php文件里的:

$db_410='0';

改成:

$db_410='1';

也可以达到目的。

Popularity: 36% [?]

相关日志:

Posted in 电脑网络. Tagged with , .

0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

Some HTML is OK

(never shared)

or, reply to this post via trackback.


SEO Powered by Platinum SEO from Techblissonline