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

yipeiwu_com6年前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 class Student { //...

取得单条网站评论以数组形式进行输出

原库函数中,没有获取单条评论显示的方法,增加如下 public static function single($id){ global $db; return $db->qu...

PHP分页显示的方法分析【附PHP通用分页类】

本文实例讲述了PHP分页显示的方法。分享给大家供大家参考,具体如下: <?php header("content-type:text/html;charset=utf-...

php中使用session防止用户非法登录后台的方法

本文实例讲述了php中使用session防止用户非法登录后台的方法。分享给大家供大家参考。具体如下: 一般来说,我们登录网站后台时,服务器会把登录信息保存到session文件里,并通过读...

基于PHP输出缓存(output_buffering)的深入理解

首先明确一下PHP的输出顺序1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering ->...