怎样限时自动删除用户上传文件夹内的文件?
比如:只让用户自己上传的文件(用户文件夹内)保留15天(从第一次上传时间开始算),到15天自动删除? 问题点数:20、回复次数:20Top
1 楼life360(wenjian)回复于 2005-07-01 11:40:20 得分 0
把文件名字,路径存进去数据库。然后判断时间就可以了Top
2 楼wangwm(星星火炬-http://www.jymass.com)回复于 2005-07-01 11:49:06 得分 0
用户每次登录的时候进行检测,如果发现上传文件的创建时间和目前时间相差15天,就进行删除Top
3 楼lnboy1003(陌生人)回复于 2005-07-01 11:57:23 得分 0
顶Top
4 楼wjm7301(随心无为)回复于 2005-07-01 11:59:28 得分 0
datediff()函数取得相差的天数作为条件进行判断.Top
5 楼emhuangzi(小皇----加油 加油!)回复于 2005-07-01 12:11:59 得分 0
就像做会话超时一样做一个时限就可以了撒Top
6 楼zxwedu( ASP教官)回复于 2005-07-01 12:12:00 得分 0
第一种方法:
如果数据表中间记录得有文件路径(目录)与名字和创建时间的时候,就先取数据然后到文件夹进行删除
例子:ID = Request("ID")
IDArray = Split(ID,"*")
for i = LBound(IDArray) to UBound(IDArray)
if IDArray(i) <> "" then
Sql = "Delete from FlowStatistic Where ID="+IDArray(i)
Conn.Execute(Sql)
end if
next
第二方法:取得文件属性,判断文件创建时间 ,然后与当前时间对比 然后删除
具体要求联系:QQ 59955917
Top
7 楼zxwedu( ASP教官)回复于 2005-07-01 12:51:35 得分 0
Set Jpeg = Server.CreateObject("Persits.Jpeg")
' 创建组件
Jpeg.Open Server.MapPath("images/dodge_viper.jpg")
' 打开图片
'也可以用OpenBinary读取二进制数据
' 以下是写入水印文字
Jpeg.Canvas.Font.Color = &H000000 ' 颜色,这里是设置成:黑
Jpeg.Canvas.Font.Family = "宋体" 'family设置字体
Jpeg.Canvas.Font.Bold = True '是否设置成粗体
Jpeg.Canvas.Font.Size = 12 '字体大小
Jpeg.Canvas.Print 10, 10, "本论坛属拒绝游泳" '在相应的位置打印文字
'下面是对图片进行描边处理
Jpeg.Canvas.Pen.Color = &H000000 ' 颜色
Jpeg.Canvas.Pen.Width = 2 '描边像素:单位pix
Jpeg.Canvas.Brush.Solid = False ' 如果要描边,这里不能设成"真",否则整个区域会被填充为上面的颜色
Jpeg.Canvas.Bar 1, 1, Jpeg.Width, Jpeg.Height '描边的位置及对应宽度
Jpeg.Save Server.MapPath("images/dodge_viper_framed.jpg") 'OK,大功告成,输入保存!
需要其他的 请留言哈 我测试了的 保证没有错误!!
Top
8 楼zxwedu( ASP教官)回复于 2005-07-01 12:52:24 得分 0
aspjpeg下载]http://www.chinaz.com/download/s/9226.asp
[aspupload下载]http://www.chinaz.com/download/s/9228.asp
name:www.chinaz.com
company:www.chinaz.com
sn:48958-77556-02411Top
9 楼feifeizaizhe(falcon)回复于 2005-07-01 12:59:42 得分 0
我觉得还是用数据库记录比较好。用函数,或者触发器,Top
10 楼songqihao()回复于 2005-07-01 15:34:09 得分 0
谢谢大家,我没有用数据库,能不能用fso判断文件创建时间,然后删除?最好给具体代码,万分感激!Top
11 楼songqihao()回复于 2005-07-01 17:20:33 得分 0
顶一下~Top
12 楼LGEN()回复于 2005-07-01 17:38:27 得分 0
其实楼主在问:“如何定时执行ASP程序”Top
13 楼songqihao()回复于 2005-07-01 17:55:21 得分 0
谢谢.但不全是,还要fso判断文件存在的时间然后删除...Top
14 楼songqihao()回复于 2005-07-02 10:03:13 得分 0
tTop
15 楼songqihao()回复于 2005-07-04 09:03:12 得分 0
?Top
16 楼Grace_pn()回复于 2005-07-04 09:24:58 得分 0
Dim adof1
Set adofso = Server.CreateObject("Scripting.FileSystemObject")
Set adof1 = adofso.GetFile(sFilePath & sFileName)
If adof1 <> "" Or Not IsNull(adof1) Then
adof1.Delete
End If
可以将上传的时间作为文件名称,然后再判断一下是不是相差15天Top
17 楼wanbb(wanbb)回复于 2005-07-04 09:39:56 得分 0
我是用Delphi写了个程序来干这事的Top
18 楼songqihao()回复于 2005-07-04 09:45:28 得分 0
谢谢楼上,但是现在文件名不方便命名为时间,请教怎么写?Top
19 楼xuqingz(10分)回复于 2005-07-04 10:02:51 得分 0
分太少,不做回答!Top
20 楼Grace_pn()回复于 2005-07-04 10:53:32 得分 0
adof1.DateCreated 是取得文件的创建时间。然后再和当前时间比较就可以了Top




