06.20.07

彻底解决Coppermine Photo Gallery 1.4.10中文乱码问题

Posted in PHP at 10:39 Author:仲远 浏览量: 1,883

标签:, , , ,

综合比较了一下,觉得在众多图库开源软件中,Coppermine Photo Gallery还是一款不错的组件,安装简单而且功能强大。在我从Sourceforge下载了最新稳定版后,却发现虽然是多国语言版,但是对中文的支持不太理想。最明显的表现是界面中文与显示语言中文总是有一项会是乱码。例如,在“语言& 编码设定”中将“语言”设置为Chinese_gb,发现整个界面都变成中文了。这时你一定很高兴吧。但是问题却来了:你会发现新增的类别与相册名保存后总是为乱码。无论你怎样调整数据库Mysql的编码/整理格式都无济于事(我试过gb2312_chinese_ci、utf8_general_ci、utf8_unicode_ci等编码格式都不起作用)。相反,如果将“文字编码”显示为chinese_simplified(euc-cn)(其实也就是gb2312编码的另一种说法),“语言”设置为英文,则能够正常进行中文类别、相册、照片描述的添加,但是界面又是中文的(如果此时在语言中选择了Chinese_gb,则仍然会有一方是乱码)。

此时不得不感慨一番:鱼和熊掌怎么就不能兼得呢?

于是,看其代码、究其原因,发现还是语言文字编码这两处设定不一致造成的。语言虽然选择了Chinese_gb,但实际确实utf-8的编码格式。于是我新建了一个gb2312编码格式的PHP文件作为一个新的语言文件(取名为chinese_gb2312.php)。将其放在CPG根目录下的lang文件夹中。这时再在后台设定中选择language,发现有了chinese_gb2312这一项,选中。文字编码一项,选中chinese_simplified(euc-cn)。保存设定。

哈哈,问题解决!再也没有乱码问题!整个世界都清静了……

大家可以点击这里(点击右键另存为)下载这个语言文件,然后保存到服务器上CPG目录下的lang文件夹中。这个语言文件在Coppermine Photo Gallery 1.4.10 (stable)下测试通过。经他人测试,在Coppermine Photo Gallery 1.4.12下也能解决问题。

另外,提供繁體中文版的語言文件下載,一樣地放在CPG目錄下的lang文件夾中。然后在后臺選擇語言的時候,選擇chinese_big5這一項。

本文可以自由转载,转载时请保留全文并注明出处。作者:仲子
原文链接:http://www.wangzhongyuan.com/archives/122.html

本文可以自由转载,转载时请保留全文并注明出处:
转载自仲子说 [ http://www.wangzhongyuan.com/ ]
原文链接:

17条评论 »

  1. cnk said,

    2007年9月12日 at 16:16

    朋友非常感谢你的智慧与技术分享,本人正被此事苦恼中,现在看来可以解决了!

  2. cnk said,

    2007年9月12日 at 16:53

    如果可以希望提供一个目前最新版本:
    Coppermine Photo Gallery 1.4.12 乱码的解决方法.

  3. cnk said,

    2007年9月12日 at 16:54

    如果可以能否提供一个 Coppermine Photo Gallery 1.4.12 版本,乱码的解决方法.

  4. 仲远 said,

    2007年9月12日 at 19:04

    嗯,我没有装过Coppermine Photo Gallery 1.4.12版,所以也不知道这个方法能不能适用与新版本。如果新版的乱码实在解决不了,可以装Coppermine Photo Gallery 1.4.10版,我可以提供这个版本给你:)

  5. 仲远 said,

    2007年9月13日 at 16:14

    呵呵,能够解决就好了:)

  6. HK said,

    2007年11月21日 at 9:35

    非常厲害! 請問有沒有繁體中文版本呢?

    謝謝!

  7. 仲远 said,

    2007年11月21日 at 18:41

    to HK,
    我在文章中新增了一個繁體中文版本,你可以在下載后放在lang文件夾下,覆蓋原來的版本試試看:)
    注意,在覆蓋前最好備份原來的chinese_big5.php文件。

    然后在后臺設定中選擇language的時候,就選擇chinese_big5這一項就好了。

  8. rpai said,

    2007年12月15日 at 23:26

    嗯,谢谢了

  9. rpai said,

    2007年12月16日 at 1:42

    我试过了,不行

  10. 仲远 said,

    2007年12月16日 at 14:11

    你是什么版本的Coppermine Photo Gallery?
    请检查一下你数据库中的字符集是不是gb2312~
    这个解决方案是经过很多人验证可行的:)你再仔细检查检查是不是有其它地方导致了乱码~

  11. william said,

    2007年12月16日 at 18:17

    请问为什么上传中文文件名的图片,就无法正常显示?
    恳请高手帮助!谢谢!

  12. 仲远 said,

    2007年12月17日 at 13:39

    如果你正确设置了CPG的编码格式的话,上传后的图片的中文名在图片链接中会自动编码成类似"%D1%A7%CA%F5%B1%A8%B8%E6"这样的字符串,这样apche才能够正确找到这张图片。

    你可以看一下这个链接:
    http://cs.ruc.edu.cn/cs-gallery/thumbnails.php?album=5&page=1
    其中的图片的url就是已经自动编码过的了。

  13. freethought said,

    2008年1月27日 at 8:50

    请教一下下
    这样数据库编码用什么?还是utf8_unicode_ci吗?
    但是这样编码的话,数据库里面乱码了哦!

  14. 仲远 said,

    2008年1月28日 at 14:34

    既然CPG是选择了中文的GB2312编码,数据库的整理类型也应该对应是gb2312_chinese_ci

  15. thunderb said,

    2008年5月5日 at 18:18

    请问这个解决办法是不是也适合1.4.18 (stable)版?
    另外这个软件有简单教程吗?第一用

  16. 仲远 said,

    2008年5月6日 at 12:33

    谢谢您的关注,不过由于已经使用了1.4.10,所以我没有测试过更高的版本。

  17. 龍 said,

    2008年8月18日 at 22:53

    请问这个解决办法是不是也适合1.4.19 (stable)版?
    如果沒有可以給我1.4.10 或 1.4.12 版本嗎?

    謝謝

Leave a Comment

*
To prove you're a person (not a spam script), type the security text shown in the picture. Click here to regenerate some new text.
Click to hear an audio file of the anti-spam word