ueditor 多目录上传

问题:在一个页面中有多个ueditor,要求每个ueditor上传的文件存到不同的路径下。

背景知识

首先查看ueditor.config.js,这里有关于图片,文件,视频等等的上传配置,根据里面的注释可找到你需要配置的代码段

例如跟附件上传有关的:

主要是这个fileUrl,从这里可找到处理你附件上传的主要文件,如这里的fileUp.php,这个文件在你ueditor下的php文件夹里。

fileUp.php


从这个fileUp.php中看出想要修改文件上传地址就主要修改这个savePath就可以了,但修改这里并达不到我们的目的。所以要想实现每个ueditor上传的文件放在不同的文件夹里,我们可以这样做,一个是让每一个ueditor都有自己专属的处理文件,另一种方式是动态的修改这个savePath。在下面我将给大家一一介绍。

方法一

将fileUp.php复制一份(如果你上传的不是附件的话可到ueditor.config.js中找到相关的php),然后将里面的savePath修改为你想要的地址,剩下的就是调用了。前台的调用如下

<script type="text/javascript">
       var editor = UE.getEditor('你页面里ueditor的id',{
           fileUrl:"专门处理这个ueditor的php文件的绝对路径,例如http://yoursite/assets/ueditor/php/UP2.php"
       //更多其他参数,请参考editor_config.js中的配置项
       });
</script>
方法二:

整体思路:在前台页面将想上传的地址传入处理文件(例如fileUp.php),然后在处理文件里做判断,如果接收到参数则替换掉$config里的savePath。

实施步骤

1.前台配置

<script type="text/javascript">
       var editor = UE.getEditor('responsibility-editor',{
                 fileRealPath:"?path=../../uploadFile/recruitEntrance/position-duty/"
       //更多其他参数,请参考editor_config.js中的配置项
       });
      var editor = UE.getEditor('requirement-editor',{
               fileRealPath:"?path=../../uploadFile/recruitEntrance/position-need/"
               //更多其他参数,请参考editor_config.js中的配置项
           }),
       editor = UE.getEditor('other-info',{
               fileRealPath:"?path=../../uploadFile/recruitEntrance/position-describe/"
               //更多其他参数,请参考editor_config.js中的配置项
           });
</script>
fileRealPath不是固定的,后面的path这个参数名也是可以改的。

2.修改模板文件

到ueditor/dialogs/下找到相应的模板文件,例如图片就是image/image.html,附件则是attachment/attachment.html,而视频为video/video.html,都可以根据英文找到对应的模板文件。
然后根据注释找到上传url,其值一般是以editor.options开头的。
例如attachment.html里是
upload_url:editor.options.fileUrl,
将其改为
upload_url:editor.options.fileUrl+editor.options.fileRealPath ,
这样地址就拼凑成URL+php/fileUp.php?path=../../uploadFile/recruitEntrance/position-duty
3.在处理文件里新增判断代码
在$config下面添上这两行代码
if($_GET['path'] != ''){                 
    $config["savePath"]= $_GET['path'];   
}
此处path对应上面url里的path,savePath对应$config里的savePath。

环境说明:Laragon1.0(Apache 2.4.17,mysql 10.1.9,Memcached 1.4.5,php 5.6.16),yii1框架,phpstorm2017.1.2




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值