加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

CKEditor+CKFinder+php上传文件配置方式

发布时间:2023-06-03 12:49:22 所属栏目:PHP教程 来源:
导读:CKEditor+CKFinder+php上传文件配置方法 ,新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder。这里主要记录CKFinder上传的一些参数配置,能够成功上传文件,自定义上传文件目录,按日期+随

CKEditor+CKFinder+php上传文件配置方法 ,新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder。这里主要记录CKFinder上传的一些参数配置,能够成功上传文件,自定义上传文件目录,按日期+随机字符重命名文件。

新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder。这里主要记录CKFinder上传的一些参数配置,能够成功上传文件,自定义上传文件目录,按日期+随机字符重命名文件。

1、下载CKFinder。

下载CKFinder,解压跟CKEditor放同一目录,下载地址:http://ckfinder.com/

2、开启上传功能。

打开ckfinder\config.php文件,找到函数CheckAuthentication(),大约在21行,将最后一行return false;改为return true;

3、自定义上传文件目录。

打开ckfinder\config.php文件,设置变量$baseUrl = '/upload/';,大约在63行。

4、设置按日期生成上传子目录。

如果您的网站上传文件比较多,文件都在一个目录下的话,对文件性能可能不是很思想,这时我们按/upload/yyyy/mm/格式生成目录。打开 ckfinder\config.php文件,找到$config['ResourceType'][],大约在189行,在 'url' => $baseUrl . 'files' 和 'directory' => $baseDir . 'files' 都加上 . '/' . date("Y") . '/' . date("m"),其它 Images,Flash项也是如此。这里的 url 表示上传后返回到输入框的地址,directory表示上传文件的目录。

5、按日期+随机字符重命名上传文件。

这样可以支持中文名字的文件上传。打开ckfinder\core\connector\php\php5\CommandHandler\FileUpload.php文件,在文件最后加个生成文件名函数

function mySetFileName() { 

    $gettime = explode(' ', microtime()); 

    $string = 'abcdefghijklmnopgrstuvwxyz0123456789'; 

    $rand = ''; 

    for ($x = 0; $x < 5; $x++) { 

        $rand .= substr($string, mt_rand(0, strlen($string) - 1), 1); 

    } 

    return date("ymdHis") . substr($gettime[0], 2, 6) . $rand; 

查找下面代码,大约在63行.

if ($sFileName != $sUnsafeFileName) { 

    $iErrorNumber = CKFINDER_CONNECTOR_ERROR_UPLOADED_INVALID_NAME_RENAMED; 

在下方添加下面代码

$sExtension = CKFinder_Connector_Utils_FileSystem::getExtension($sFileName); 

$sFileName = mySetFileName() . '.' . $sExtension; 

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!