joomla jce editor 解决上传中文名文件失败问题

yipeiwu_com5年前PHP代码库
不论是JCE还是CKEDITOR,都没解决中文名文件的问题,要么上传失败,要么传上去了中文名不能被web访问。相比之下,JCE更加人性化,比如文件上传后默认被选中,不需用户在那么小的弹出窗口去上下翻搜寻刚刚上传的文件。研究了下JCE的源码,改掉保存文件名的方式,使用纯数字来作为文件名。

到joomla安装的目录,找到components/com_jce/editor/extensions/browser/file.php,修改 1017 - 1020 行:
复制代码 代码如下:

// strip extension
$name = WFUtility::stripExtension($name);
// make file name 'web safe'
$name = WFUtility::makeSafe($name, $this->get('websafe_mode', 'utf-8'));

改成
复制代码 代码如下:

$name = date('Ymd-His-', time()).rand(999);

我的joomla版本是1.5, JCE版本 2.1.3,不同版本修改的位置可能稍有差别。

相关文章

PHP实现加强版加密解密类实例

本文实例讲述了PHP实现加强版加密解密类。分享给大家供大家参考。具体如下: <?php class Ender{ private $enkey;//加密解密用的密钥...

php echo()和print()、require()和include()函数区别说明

1.echo和print的区别 PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回fla...

php foreach正序倒序输出示例代码

实现代码: // 正序 foreach($files as $file_num => $file) { if(is_file($directory.$file)){ //...

php简单实现批量上传图片的方法

本文实例讲述了php简单实现批量上传图片的方法。分享给大家供大家参考,具体如下: <?php function upload_multi($path,$photo,$i...

PHP实现的简单网络硬盘

本文实例讲述了PHP实现的简单网络硬盘。分享给大家供大家参考。具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transi...