CKFinder上传中文名文件乱码问题的解决方法(PHP)
>首页 -> 社会专题 -> 硬件网络 2012-01-30 来源: 作者: 浏览:654

在ckfinder/config.php中找到如下一段配置代码:

/*
If you have iconv enabled (visit http://php.net/iconv for more information),
you can use this directive to specify the encoding of file names in your
system. Acceptable values can be found at:
 http://www.gnu.org/software/libiconv/

Examples:
 $config['FilesystemEncoding'] = 'CP1250';
 $config['FilesystemEncoding'] = 'ISO-8859-2';
*/
$config['FilesystemEncoding'] = 'UTF-8';

将UTF-8修改为GB2312,上传后文件名正确了,但在CKEditor中显示的链接出现乱码,因为CKEditor所在页面使用的字符集是UTF-8,未去细究如何解决这个问题,采用了文件重命名的方案去替代解决。

上传文件重命名

修改ckfinder\core\connector\php\php5\CommandHandler\FileUpload.php

找到以下代码

if ($sFileName != $sUnsafeFileName) {
  $iErrorNumber = CKFINDER_CONNECTOR_ERROR_UPLOADED_INVALID_NAME_RENAMED;
}

在这段代码之后添加

$sExtension=CKFinder_Connector_Utils_FileSystem::getExtension($sFileName);
$sFileName=date('YmdHis').'.'.$sExtension;

您看到此篇文章时的感受是:

Tags:
责任编辑:佚名
免责申明
除原创及很少部分因网文图片遗失而补存外,本站不存储任何有版权的内容。你看到的文章和信息及网址索引均由机器采集自互联网,由于时间不同,内容可能完全不同,请勿拿本网内容及网址索引用于交易及作为事实依据,仅限参考,不会自行判断者请勿接受本站信息,本网转载,并不意味着赞同其观点或证实其内容的真实性.如涉及版权等问题,请立即联系管理员,我们会予以更改或删除,保证您的权利.对使用本网站信息和服务所引起的后果,本网站不作任何承诺.
内容加载中,请稍候...
密码: (新用户注册)

<<
相关文章

手机扫描

空间赞助

快速互动

论坛互动
讨论留言

有事联系

QQ咨询

统计联系

MAIL:gnlt@Dovechina.com
正在线上:

版权与建议

任何你想说的