ASP如何把指定文件夹里的文件全部列出来,并点击任一个文件时打开该文件?

xwt1234567890 2005-06-03 11:48:58
ASP如何把指定文件夹里的文件全部列出来,并点击任一个文件时打开该文件?
...全文
216 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xwt1234567890 2005-06-06
  • 打赏
  • 举报
回复
http://blog.csdn.net/iuhxq/archive/2004/12/11/212987.aspx
这里的代码如何分页呀
cyl180555 2005-06-06
  • 打赏
  • 举报
回复
<%
if request("page")<>"" then
currentPage=cint(request("page"))
else
currentPage=1
end if
MaxPerPage=PageCount

UploadDir = "Upfiles"
strFileName="admin_picmang.asp"

TruePath=Server.MapPath(UploadDir)
If not Qcdn.IsObjInstalled("Scripting.FileSystemObject") Then
Response.Write "<b><font color=red>你的服务器不支持 FSO(Scripting.FileSystemObject)! 不能使用本功能</font></b>"
Else
set fso=CreateObject("Scripting.FileSystemObject")
if request("Action")="Del" then
call DelFiles()
end if

if fso.FolderExists(TruePath)then
FileCount=0
TotleSize=0
Set theFolder=fso.GetFolder(TruePath)
For Each theFile In theFolder.Files
FileCount=FileCount+1
TotleSize=TotleSize+theFile.Size
next
totalPut=FileCount
if currentpage<1 then
currentpage=1
end if
if (currentpage-1)*MaxPerPage>totalput then
if (totalPut mod MaxPerPage)=0 then
currentpage= totalPut \ MaxPerPage
else
currentpage= totalPut \ MaxPerPage + 1
end if

end if
if currentPage=1 then
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
else
if (currentPage-1)*MaxPerPage<totalPut then
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
else
currentPage=1
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
end if
end if
else
response.write "找不到文件夹!可能是配置有误!"
end if
end if

sub showContent()
dim c
FileCount=0
TotleSize=0
%>
<form action="" name="form1" method="post">
<table width="95%" border="1" cellspacing="0" cellpadding="3" align="center" bordercolorlight="#ECEEE4" bordercolordark="#CCCABC">

<tr>
<td colspan="7" align="center" height="30" background="image/tablebg.gif"><b>上
传 图 片 管 理</b> </td>
</tr>
<tr align="center" valign="middle">
<td height="25">选中 <br> </td>
<td height="25">文件名</td>
<td height="25">文件大小</td>
<td height="25">文件类型</td>
<td height="25">最后修改时间</td>
<td height="25">操作</td>
</tr>
<%

For Each theFile In theFolder.Files
c=c+1
if FileCount>=MaxPerPage then
exit for
elseif c>MaxPerPage*(CurrentPage-1) then
%>
<tr align="center" valign="middle">
<td height="25"><input name="FileName" type="checkbox" id="FileName" value="<%=theFile.Name%>"></td>
<td height="25"><a href="<%=(UploadDir & "/" & theFile.Name)%>" target="_blank"><strong><%=theFile.Name%></strong></a></td>
<td height="25"><%=theFile.size%>字节</td>
<td height="25"><%=theFile.type%></td>
<td height="25"><%=theFile.DateLastModified%></td>
<td height="25"><a href="admin_picmang.asp?Action=Del&FileName=<%=theFile.Name%>" onclick="{if(confirm('你真的要删除此文件吗!')){this.document.form1.submit();return true;}return false;}">删除</a></td>
</tr>
<%
FileCount=FileCount+1
TotleSize=TotleSize+theFile.Size
end if
Next
%>

</table>
<table width="95%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td width="200" height="30"><input name="chkall" type="checkbox" id="chkall" onClick="javascript:CheckAll(this.form)" value="checkbox">
选中本页显示的所有文件</td>
<td><input name="Action" type="hidden" id="Action" value="Del">
<input type="submit" name="Submit" value="删除选中的文件"></td>
</tr>
</table>
</form>
<%
end sub
sub showpage2(sfilename,totalnumber,maxperpage)
dim n, i,strTemp
if totalnumber mod maxperpage=0 then
n= totalnumber \ maxperpage
else
n= totalnumber \ maxperpage+1
end if
strTemp= "<table align='center'><form name='showpages' method='Post' action='" & sfilename & "'><tr><td>"
strTemp=strTemp & "共 <b>" & totalnumber & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K   "
'sfilename=Qcdn.JoinChar(sfilename)
if CurrentPage<2 then
strTemp=strTemp & "首页 上一页 "
else
strTemp=strTemp & "<a href='" & sfilename & "page=1'>首页</a> "
strTemp=strTemp & "<a href='" & sfilename & "page=" & (CurrentPage-1) & "'>上一页</a> "
end if

if n-currentpage<1 then
strTemp=strTemp & "下一页 尾页"
else
strTemp=strTemp & "<a href='" & sfilename & "page=" & (CurrentPage+1) & "'>下一页</a> "
strTemp=strTemp & "<a href='" & sfilename & "page=" & n & "'>尾页</a>"
end if
strTemp=strTemp & " 页次:<strong><font color=red>" & CurrentPage & "</font>/" & n & "</strong>页 "
strTemp=strTemp & " <b>" & maxperpage & "</b>" & "个文件/页"
strTemp=strTemp & " 转到:<select name='page' size='1' onchange='javascript:submit()'>"
for i = 1 to n
strTemp=strTemp & "<option value='" & i & "'"
if cint(CurrentPage)=cint(i) then strTemp=strTemp & " selected "
strTemp=strTemp & ">第" & i & "页</option>"
next
strTemp=strTemp & "</select>"
strTemp=strTemp & "</td></tr></form></table>"
response.write strTemp
end sub

sub DelFiles()
dim whichfile,arrFileName,i
whichfile=trim(Request("FileName"))
if whichfile="" then exit sub
if instr(whichfile,",")>0 then
arrFileName=split(whichfile,",")
for i=0 to ubound(arrFileName)
if left(trim(arrFileName(i)),3)<>"../" and left(trim(arrFileName(i)),1)<>"/" then
whichfile=server.MapPath(UploadDir & "/" & trim(arrFileName(i)))
set thisfile=fso.GetFile(whichfile)
thisfile.Delete True
end if
next
else
if left(whichfile,3)<>"../" and left(whichfile,1)<>"/" then
Set thisfile = fso.GetFile(server.MapPath(UploadDir & "/" & whichfile))
thisfile.Delete True
end if
end if
Response.Write("<script>alert(""删除成功"");location.href=""admin_picmang.asp"";</script>")
end sub
%>
xwt1234567890 2005-06-06
  • 打赏
  • 举报
回复
没有人理我吗?
xwt1234567890 2005-06-06
  • 打赏
  • 举报
回复
那请问如何分页显示呀?
kc_ren 2005-06-06
  • 打赏
  • 举报
回复
<%Public Function IsObjInstalled(strClassString)
On Error Resume Next
IsObjInstalled = False
Err = 0
Dim xTestObj
Set xTestObj = Server.CreateObject(strClassString)
If 0 = Err Then IsObjInstalled = True
Set xTestObj = Nothing
Err = 0
End Function%>
<%
Const PageCount=10
if request("page")<>"" then
currentPage=cint(request("page"))
else
currentPage=1
end if
MaxPerPage=PageCount
UploadDir = "XXXXX" '文件夹地址
strFileName="XXXX.asp" 'ASP文件名

TruePath=Server.MapPath(UploadDir)
If not IsObjInstalled("Scripting.FileSystemObject") Then
Response.Write "<b><font color=red>你的服务器不支持 FSO(Scripting.FileSystemObject)! 不能使用本功能</font></b>"
Else
set fso=CreateObject("Scripting.FileSystemObject")
if request("Action")="Del" then
call DelFiles()
end if

if fso.FolderExists(TruePath)then
FileCount=0
TotleSize=0
Set theFolder=fso.GetFolder(TruePath)
For Each theFile In theFolder.Files
FileCount=FileCount+1
TotleSize=TotleSize+theFile.Size
next
totalPut=FileCount
if currentpage<1 then
currentpage=1
end if
if (currentpage-1)*MaxPerPage>totalput then
if (totalPut mod MaxPerPage)=0 then
currentpage= totalPut \ MaxPerPage
else
currentpage= totalPut \ MaxPerPage + 1
end if

end if
if currentPage=1 then
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
else
if (currentPage-1)*MaxPerPage<totalPut then
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
else
currentPage=1
showContent
showpage2 strFileName,totalput,MaxPerPage
response.write "<br><div align='center'>本页共显示 <b>" & FileCount & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K</div>"
end if
end if
else
response.write "找不到文件夹!可能是配置有误!"
end if
end if

sub showContent()
dim c
FileCount=0
TotleSize=0
%>
<body>
<form action="" name="form1" method="post">
<table width="95%" border="1" cellspacing="0" cellpadding="3" align="center" bordercolorlight="#326598" bordercolordark="#ffffff">
<tr >
<td height="25" colspan="7" align="center" background="admin/images/tile_sub.gif"><b><font color="ffffff">上 传
管 理</font></b></td>
</tr>
<tr align="center" valign="middle">
<td height="25">选择<br> </td>
<td height="25">文件标题</td>
<td height="25">文件大小</td>
<td height="25">文件类型</td>
<td height="25">最后修改时间</td>
<td height="25">操作</td>
</tr>
<%

For Each theFile In theFolder.Files
c=c+1
if FileCount>=MaxPerPage then
exit for
elseif c>MaxPerPage*(CurrentPage-1) then
%>
<tr align="center" valign="middle">
<td height="25"><input name="FileName" type="checkbox" id="FileName" value="<%=theFile.Name%>"></td>
<td height="25"><a href="<%=(UploadDir & "/" & theFile.Name)%>" target="_blank"><%=theFile.Name%></a></td>
<td height="25"><%=theFile.size%>字节</td>
<td height="25"><%=theFile.type%></td>
<td height="25"><%=theFile.DateLastModified%></td>
<td height="25"><a href="admink.asp?Action=Del&FileName=<%=theFile.Name%>" onclick="{if(confirm('你真的要删除此文件吗!')){this.document.form1.submit();return true;}return false;}">删除</a></td>
</tr>
<%
FileCount=FileCount+1
TotleSize=TotleSize+theFile.Size
end if
Next
%>

</table>
<table width="95%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td width="200" height="30"><input name="chkall" type="checkbox" id="chkall" onClick="javascript:CheckAll(this.form)" value="checkbox">
选中本页显示的所有文件</td>
<td><input name="Action" type="hidden" id="Action" value="Del">
<input type="submit" name="Submit" onClick="return test();" value="删除选中的文件" ></td>
</tr>
</table>
</form>
<%
end sub
sub showpage2(sfilename,totalnumber,maxperpage)
dim n, i,strTemp
if totalnumber mod maxperpage=0 then
n= totalnumber \ maxperpage
else
n= totalnumber \ maxperpage+1
end if
strTemp= "<table align='center'><form name='showpages' method='Post' action='" & sfilename & "'><tr><td>"
strTemp=strTemp & "共 <b>" & totalnumber & "</b> 个文件,占用 <b>" & TotleSize\1024 & "</b> K   "
'sfilename=Qcdn.JoinChar(sfilename)
if CurrentPage<2 then
strTemp=strTemp & "首页 上一页 "
else
strTemp=strTemp & "<a href='" & sfilename & "page=1'>首页</a> "
strTemp=strTemp & "<a href='" & sfilename & "page=" & (CurrentPage-1) & "'>上一页</a> "
end if

if n-currentpage<1 then
strTemp=strTemp & "下一页 尾页"
else
strTemp=strTemp & "<a href='" & sfilename & "page=" & (CurrentPage+1) & "'>下一页</a> "
strTemp=strTemp & "<a href='" & sfilename & "page=" & n & "'>尾页</a>"
end if
strTemp=strTemp & " 页次:<strong><font color=red>" & CurrentPage & "</font>/" & n & "</strong>页 "
strTemp=strTemp & " <b>" & maxperpage & "</b>" & "个文件/页"
strTemp=strTemp & " 转到:<select name='page' size='1' onchange='javascript:submit()'>"
for i = 1 to n
strTemp=strTemp & "<option value='" & i & "'"
if cint(CurrentPage)=cint(i) then strTemp=strTemp & " selected "
strTemp=strTemp & ">第" & i & "页</option>"
next
strTemp=strTemp & "</select>"
strTemp=strTemp & "</td></tr></form></table>"
response.write strTemp
end sub

sub DelFiles()
dim whichfile,arrFileName,i
whichfile=trim(Request("FileName"))
if whichfile="" then exit sub
if instr(whichfile,",")>0 then
arrFileName=split(whichfile,",")
for i=0 to ubound(arrFileName)
if left(trim(arrFileName(i)),3)<>"../" and left(trim(arrFileName(i)),1)<>"/" then
whichfile=server.MapPath(UploadDir & "/" & trim(arrFileName(i)))
set thisfile=fso.GetFile(whichfile)
thisfile.Delete True
end if
next
else
if left(whichfile,3)<>"../" and left(whichfile,1)<>"/" then
Set thisfile = fso.GetFile(server.MapPath(UploadDir & "/" & whichfile))
thisfile.Delete True
end if
end if
Response.Write("<script>alert(""删除成功"");location.href=""admink.asp"";</script>")
end sub
%>
xwt1234567890 2005-06-06
  • 打赏
  • 举报
回复
为什么没有人理我
huangxiaoxia1986 2005-06-03
  • 打赏
  • 举报
回复
是用FSO实传的,只能显示你站点下发布目录下面的所用文件和文件夹。
iuhxq 2005-06-03
  • 打赏
  • 举报
回复
做很小改动即可满足你的要求http://blog.csdn.net/iuhxq/archive/2004/12/11/212987.aspx
xwt1234567890 2005-06-03
  • 打赏
  • 举报
回复
我的需求不是把站点下发布目录下面的所用文件和文件夹列出来,而是把站点下指定文件夹列出来,同时也列出指定文件夹里的文件,并点击任一个文件时打开该文件
bora521 2005-06-03
  • 打赏
  • 举报
回复
很比较多工具

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧