成功教育

您现在的位置是:首页 > 在线教育 > 平台研究

平台研究

"在线课程管理"之Claroline使用集10

2013-09-17 10:27:00平台研究
改为默认utf-8编码:  claroline的设计非常优秀,可以方便地改为任意编码。特别是mysql的连接方式,仅仅有三处需要改动:  1、修改lang里的编码:locale_settings.php,把gb2312换

改为默认utf-8编码:

  claroline的设计非常优秀,可以方便地改为任意编码。特别是mysql的连接方式,仅仅有三处需要改动:

  1、修改lang里的编码:locale_settings.php,把gb2312换为utf-8,注意保存为utf-8编码。

  2、修改complete.lang.php的编码方式:可以用“记事本”或UltraEdit等编辑工具找开,然后“另存为”的时候,修改一下编码方式。

  3、修改三处mysql_connect时的默认编码:

  (1)inc\claro_init_global.inc.php:131行

  (2)inc\claro_init_local.inc.php:329行

  (3)wiki\lib\class.dbconnection.php:171行

  分别在上面三行后加上一行,内容为:mysql_query("SETNAMESUTF8");

  4、修改mysql数据库的编码方式:

  (1)修改claroline数据库的默认编码,可以在phpmyadmin的操作里修改。

  (2)如果是已经建立了数据库,那么需要先导出,导出时需要保证汉字都正确。

  注意:对于已经存在的数据库,导出时一定要注意“导出blob类型为二进制”,这个必须保证不选择。如果选择上这个选项,那么所有的文本格式的文字将会丢失!!

  (3)删除数据库。

  (4)修改连接编码方式。在phpmyadmin的“服务器:localhost”,也就是第一页那儿改为:utf8_unicode_ci。

  (5)把导出的数据库文件编码改为utf-8,可以使用“记事本”或Ultraedit32的“另存为”改。

  (6)导入数据库文件,注意导入的时候要选准数据库名,要注意编码方式要选utf-8(如果不一小心写成utf8,那么firefox不影响,但是IE6编码会出错,改为utf-8就可以了)。

  5、刷新,右击,查看页面源代码。可以看一下编码方式是哪一种,如果显示是utf8,并且出现正确的汉字,那么改造就完成了。

  6、问题:wiki在utf8下不能中文显示不正确,但是编辑的时候正确。

  原因:在wiki/lib/wiki2xhtml/class.wiki2xhtml.php中,在大约200-230行左右,有一个去除Word等程序附加的一些东西的程序,用str_replace函数,这个函数在utf-8编码时会出现问题,导致吃掉部分中文的编码,所以显示不正确。

  解决:临时还没找到解决方案。在php官方网站上也有人说这个问题。由于wiki一般不能从word复制文本,所以这个块可以不启用,注释掉也可以,也可以在文件开头的地方把下面的参数改为0。

  $this->setOpt('active_fix_word_entities',1);

  7、如果是已经存在的系统,那么要把excercise里的所有文件编码修改为utf-8,这个工作会比较大。

更多Claroline信息:http://www.aieln.com/system/claroline/

文章评论