主题: 删除上传却未使用的文件。
作者: rein, 发布日期: 2013-07-01 20:40:52, 浏览数: 2852

1.定义一个临时文件夹tmp_file,在文件夹tmp_file下建立按照用户id命名的文件夹。统一上传到这里。

2.前台见一个hidden(隐藏)的input文本框。name=file

3.前台提交表单前调用函数,这个函数用js的正则取得编辑框内,路径含有tmp_file的图片的路径。

4.文章储存的时候,按照input file post过来的图片路径,移动到正式文件夹save_file。

5.删除tmp_file内用户id命名的文件夹。

 

此外,修改管理图片空间的根目录为:tmp_file内用户id命名的文件夹。

这样用户只可以管理临时文件夹内只属于自己上传的文件。已使用的文件则不需要管理。

作者: rein, 发布日期: 2013-07-01 20:43:55

分享个提取已临时文件的js

function chkfile(str,addr)
{
 var val=''; var arr;
 patt = new RegExp('<img.*?src="('+addr+'[^\"]*?(\\.gif|\\.png|\\.bmp|\\.jpg))".*?>','g');
 while((arr=patt.exec(str))!=null)val=val+'(图片地址)'+arr[1];
 theObj('image').value=val;
 val='';
 patt = new RegExp('<a.*?href="('+addr+'[^\"]*?(\\.doc|\\.docx|\\.xls|\\.xlsx|\\.ppt|\\.txt|\\.rar|\\.zip|\\.gz))".*?>','g');
 while((arr=patt.exec(str))!=null)val=val+'(文件地址)'+arr[1];
 theObj('file').value=val;
}

 

这个过程后台也可以完成,但是还是在前台做节省资源

回复
作者: xiaoxiami, 发布日期: 2014-09-08 10:18:22

思路非常好,但是很耗资源。其实如果在选择图片时就显示本地预览,删除的也是预览。在点击全部插入时才上传就不会产生这样的事情。

在程序删除时居然没有删除服务器文件,也是设计缺陷。

回复
发表新帖 发表回复