| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1193 人关注过本帖
标题:用lyfupload组件上传修改上传后的文件名的问题
只看楼主 加入收藏
lijuan2083
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-4
收藏
 问题点数:0 回复次数:7 
用lyfupload组件上传修改上传后的文件名的问题

各位好:
  我想用lyfupload 文件上传组件上传文件,但上传后,文件名不保留为原来的文件名而是以上传时的日期和时间来命名文件,比如选择上传的文件名为index.jpg,上传到upload文件夹后想给改成2007731160520.jpg,该怎么实现呢,以下是我写的不完整的程序.该怎么修改下呢,请各位高手帮忙,谢谢了.这个程序只能实现数据库中文件名改了,但在文件夹中的仍是index.jpg,而不是2007731160520.jpg,怎么把文件夹中的名称也给改了呢
<!--#include file="conn.asp"-->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%
'调用lyfupload上传组件
Dim Upload
Set upload = Server.CreateObject("LyfUpload.UploadFile")
upload.maxsize=2*1024*1024 '设置文件上传的最大为2M

'设置上传文件保存路径,为当前文件夹下的upload文件夹。
Dim filepath,filename
filepath=Server.MapPath("upload")
'保存文件到服务器,upfile是表单中的名称,filepath是保存路径,False表示不允许覆盖
filename=upload.SaveFile("upfile",filepath,False)
If filename="0" Then
'表示文件过大,超出体积
Response.Write "文件超出2M!请返回"
Response.write "<a href='javascript:history.back(-1);'>重新上传</a><center>"
Elseif filename="3" then
'表示该文件名在服务器上已经存在,需要重新发布。
Response.Write "此文件在服务器上已经存在!请返回"
Response.write "<a href='javascript:history.back(-1);'>重新上传</a><center>"
Else
'将文件信息保存到数据库
Dim strSql
filename=makeFileName()+getExt(filename)
strSql="Insert Into product(filename,title,intro,submit_date,userid)"
strSql=strSql & " Values('" & filename & "','" & upload.request("title") & "','" & Upload.Request("intro") &"',#" & Now() & "#,"& request.QueryString("userid") &")"
conn.Execute(strSql)
'成功插入数据库后,返回首页
Response.Redirect "pro_index.asp?userid=" & request.QueryString("userid")
End If
%>
<%
'该函数用来得到文件的扩展名
Function GetExt(thefilename)
Dim strTemp,numTemp
strTemp=Split(thefilename,".") '拆分成数组
numTemp=Ubound(strTemp) '返回数组的最大下标
If numTemp=0 Then
GetExt="No" '表示没有扩展名
Else
GetExt="." & strTemp(numTemp) '是数组中最后一项
End If
End Function
function makeFileName()
dim f
f=now()
f=replace(f,"-","")
f=replace(f," ","")
f=replace(f,":","")
makeFileName=f
end function
%>

[此贴子已经被阳光白雪于2007-7-31 16:11:05编辑过]

搜索更多相关主题的帖子: lyfupload 组件 文件名 
2007-07-31 16:08
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
修改文件名的部分LZ 没有帖上来,

应该是用;
function makeFileName()
dim f
f=now()
f=replace(f,"-","")
f=replace(f," ","")
f=replace(f,":","")
makeFileName=f
end function

这个函数返回新文件名的,但在你给出的程序里并没有给出调用此函数的程序段

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2007-07-31 16:16
lijuan2083
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-4
收藏
得分:0 
有的,在else 后面, filename=makeFileName()+getExt(filename) 这句是,这是插入到数据库中的,在数据库中也显示文件是以日期时间命名的,但在文件夹中的文件名却还是原文件名,就是不知道应该怎么调用这个函数,使文件夹中的文件名也成为以日期和时间命名的.
2007-07-31 16:20
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
是有,那就只接把那句注释掉就可以了

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2007-07-31 16:46
lijuan2083
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-4
收藏
得分:0 
可是注释掉以后也不是我想要的结果啊,文件夹中的文件名还是改不了啊.
2007-07-31 16:49
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
你是要把文件夹中的文件重命名呐,
LyfUpload.UploadFile
不知道有没有这个功能,如果没有这个接口的话,那就改不了了,
这个组件的又没法修改
建议用无组件上传:
http://bbs.bc-cn.net/viewthread.php?tid=139005&star=at

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2007-07-31 16:57
ayue222
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:341
专家分:0
注 册:2007-7-25
收藏
得分:0 
filename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&"."&getExt(filename)
2007-07-31 16:58
lijuan2083
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-4
收藏
得分:0 
我没有用过无组件上传.我试试吧.谢谢了.
2007-07-31 17:17
快速回复:用lyfupload组件上传修改上传后的文件名的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.052369 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved