如何用ASP实现WEB页显示FTP空间内容?
具体是用一个WEB页显示出整个FTP空间的内容?请高手指教! 问题点数:100、回复次数:7Top
1 楼dachangtui(大长腿)回复于 2004-12-02 22:28:24 得分 0
用fso读取,然后返回给客户端,也可以写成文件,再把文件返回给客户端Top
2 楼again_gyf()回复于 2004-12-02 22:29:27 得分 0
易迅Web文件管理系统Top
3 楼dachangtui(大长腿)回复于 2004-12-02 22:30:48 得分 0
ASP,FSO遍历目录及目录下文件
<%@ Language=VBScript %>
<%
'一个遍历目录以及目录下文件的函数,
%>
<%
function bianli(path)
set fso=server.CreateObject("scripting.filesystemobject")
on error resume next
set objFolder=fso.GetFolder(path)
set objSubFolders=objFolder.Subfolders
for each objSubFolder in objSubFolders
nowpath=path + "\" + objSubFolder.name
Response.Write nowpath
set objFiles=objSubFolder.Files
for each objFile in objFiles
Response.Write "<br>---"
Response.Write objFile.name
next
Response.Write "<p>"
bianli(nowpath)'递归
next
set objFolder=nothing
set objSubFolders=nothing
set fso=nothing
end function
%>
<%
bianli("d:") '遍历d:盘
%>
Top
4 楼again_gyf()回复于 2004-12-02 22:31:30 得分 0
//////////view.asp
<%@LANGUAGE="VBScript" CODEPAGE="936"%>
<%
'**Start Encode**
option explicit
if Session("Counter") = "" then
Session("Counter") = 2
else
Session("Counter") = Session("Counter") - 1
end if
if Session("Root")="" then
dim fso,ConfigFile,Manager,Password
set fso = Server.CreateObject("Scripting.FileSystemObject")
set ConfigFile = fso.OpenTextFile(Server.MapPath("Config.asp"))
ConfigFile.SkipLine
ConfigFile.SkipLine
Manager = ConfigFile.ReadLine
Password = ConfigFile.ReadLine
if Request("MyCode")=Request("Code") and Split(Manager,"=")(1) = Request("Manager") and Split(Password,"=")(1) = Request("Password") then
Session("Root") = StrReverse(Request.ServerVariables("SCRIPT_NAME"))
Session("Root") = Mid(Session("Root"),InStr(1,Session("Root"), "/"))
Session("Root") = StrReverse(Session("Root"))
Session("CurFolder") = Session("Root")
end if
ConfigFile.Close
set fso = nothing
if Session("Root")<>"" then
Response.Redirect("u.asp")
end if
%>
<html>
<head>
<title>管理员登陆</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="Commen.css" rel="stylesheet" type="text/css">
</head>
<body>
<br><br><br><div align="center"><font color="#000099">[管理员登陆]</font></div><br>
<form action="u.asp" method="post" target="_self">
<table width="421" border="0" align="center" cellpadding="0" cellspacing="0" style="border: #333333 1px solid">
<tr>
<td width="419" height="39" align="center" valign="middle" bgcolor="#3280be" style="BORDER-BOTTOM: #333333 1px solid"><strong><font color="#FFFFFF">欢迎使用易迅Web文件管理系统</font></strong></td>
</tr>
<tr>
<td style="padding-left:130px;" height="35" align="left" valign="middle">管 理 员:
<input class="txt" name="Manager" type="text" id="Manager" size="16" maxlength="16"></td>
</tr>
<tr>
<td style="padding-left:130px;" height="35" align="left" valign="middle">管理密码:
<input class="txt" name="Password" type="password" id="Password" size="16" maxlength="16"></td>
</tr>
<tr>
<td style="padding-left:130px;" height="35" align="left" valign="middle">附 加 码:
<input class="txt" name="MyCode" type="text" id="MyCode" size="4" maxlength="4"> <input name="Code" type="text" id="Code" style="border:0px;color:#FF0000;" value="<%=Mid(Timer,2,4)%>" size="4" maxlength="4" readonly>
</td>
</tr>
<tr>
<td height="26" align="center" valign="middle"><input type="submit" class="btn" value="确 定"></td>
</tr>
</table>
</form>
<br><br>
</body>
</html>
<%
else
'处理请求
dim Folders,Files,CurFolder
set fso = Server.CreateObject("Scripting.FileSystemObject")
select case Request("Action")
case "Goto"
if Request("folder") = ".." then
if Session("CurFolder") <> Session("Root") then
Session("CurFolder") = Left(Session("CurFolder"),Len(Session("CurFolder"))-1)
Session("CurFolder") = StrReverse(Session("CurFolder"))
Session("CurFolder") = Mid(Session("CurFolder"),InStr(1, Session("CurFolder"), "/"))
Session("CurFolder") = StrReverse(Session("CurFolder"))
end if
else
Session("CurFolder") = Session("CurFolder")&Request("folder")&"/"
end if
case "Remove"
if Request.Form("Name").Count<>0 then
dim I
for I = 1 to Request.Form("Name").Count
On Error Resume Next
if Mid(Request.Form("Name")(I),Len(Request.Form("Name")(I)),1)="/" then
fso.DeleteFolder Server.MapPath(Session("CurFolder"))&"\"&Mid(Request.Form("Name")(I),1,Len(Request.Form("Name")(I))-1),true
else
fso.DeleteFile Server.MapPath(Session("CurFolder"))&"\"&Request.Form("Name")(I),true
end if
next
end if
case "CreateFolder"
On Error Resume Next
fso.CreateFolder Server.MapPath(Session("CurFolder"))&"\"&Request("NewFolder")
case else
end select
%>
<html>
<head>
<title>易迅Web文件管理系统</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="Commen.css" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
<!--
function Goto(folder)
{
document.all.folder.value=folder;
document.all.form1.submit();
}
function ChkAll()
{
var BoxCnt = document.all.form2.Name.length,i;
if(BoxCnt>1)
{
for(i=0;i<BoxCnt;i++)
{
document.all.form2.Name[i].checked=document.all.All.checked;
}
}
else
{
document.all.form2.Name.checked=document.all.All.checked;
}
}
-->
</script>
</head>
<body>
<br>
<%
if not fso.FolderExists(Server.MapPath(Session("CurFolder"))) then
Session("CurFolder") = Left(Session("CurFolder"),Len(Session("CurFolder"))-1)
Session("CurFolder") = StrReverse(Session("CurFolder"))
Session("CurFolder") = Mid(Session("CurFolder"),InStr(1, Session("CurFolder"), "/"))
Session("CurFolder") = StrReverse(Session("CurFolder"))
end if
%>
<form action="u.asp" name="form1" method="post" target="_self">
<table align="center" width="860" border="0" cellpadding="0" cellspacing="0" style="border:solid 1px #000055;">
<tr>
<td width="646" height="25" valign="bottom" bgcolor="#dbeaf5"> <a href="javascript:Goto('..');" title="进入上一级文件夹"><img src="up.gif" width="20" height="17">向上</a> <strong>当前位置:</strong><font color="#FF0000"><%= Mid(Session("CurFolder"),Len(Session("Root")),Len(Session("CurFolder")))%></font></td>
<td width="137" align="center" valign="bottom" bgcolor="#dbeaf5"> <font color="#FF0000">大小:</font>
<%
set CurFolder = fso.GetFolder(Server.MapPath(Session("CurFolder")))
Response.Write(CountSize(CurFolder.size))
%>
</td>
<td width="74" align="center" valign="bottom" bgcolor="#dbeaf5"><a href="Exit.asp">退出管理</a></td>
</tr>
</table>
Top
5 楼windsha(风中散沙)回复于 2004-12-02 22:31:43 得分 0
不好意思,也许是我没讲明白,是这样地
在一个网站下,用一个页调用另一个FTP空间的全部内容,对于空间里的文件只能下载,其它操作不允许!
麻烦大侠们给出代码,谢谢!Top
6 楼again_gyf()回复于 2004-12-02 22:31:53 得分 100
<input name="folder" type="hidden" value="">
<input name="Action" type="hidden" id="Action" value="Goto">
</form>
<form action="u.asp" name="form2" method="post" target="_self">
<table align="center" width="860" border="0" cellpadding="0" cellspacing="0">
<tr>
<th width="60" height="32" align="center" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;"><input name="All" type="checkbox" id="All" onClick="ChkAll();">
<img title="删除" onClick="document.all.form2.submit();" style="cursor:hand;" src="del.gif" width="16" height="16"></th>
<th width="340" align="center" valign="middle" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;">名
称</th>
<th width="200" align="center" valign="middle" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;">类
型</th>
<th width="130" align="center" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;">大
小</th>
<th width="130" align="center" bgcolor="#DBEAF5" style="border:solid 1px #8CA5B5;">最后修改时间</th>
</tr>
<%
dim Thing
set CurFolder = fso.GetFolder(Server.MapPath(Session("CurFolder")))
for each Thing in CurFolder.SubFolders
%>
<tr bgcolor="#EFF7FF">
<td style="border-bottom:solid 1px #8CA5B5;" height="25" align="center"><input name="Name" type="checkbox" id="Name" value="<%=Thing.Name&"/"%>"></td>
<td valign="middle" style="border-bottom:solid 1px #8CA5B5;padding-left:10px;"><a href="javascript:Goto('<%=Thing.Name%>');" title="进入此文件夹"><img src="folder.GIF" width="16" height="16" border="0"><%=Thing.Name%></a></td>
<td align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;"><%=Thing.Type %></td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center"><%=CountSize(Thing.size)%></td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center"><%=Thing.DateLastModified%></td>
</tr>
<%
next
for each Thing in CurFolder.Files
%>
<tr bgcolor="#EFF7FF">
<td style="border-bottom:solid 1px #8CA5B5;" height="25" align="center"><input name="Name" type="checkbox" id="Name" value="<%=Thing.Name%>"></td>
<td valign="middle" style="border-bottom:solid 1px #8CA5B5;padding-left:10px;"><a style="color:#000000;" href="<%=Session("CurFolder")&Thing.Name%>" target="_blank" title="在浏览器中打开"><%=Thing.Name%></a></td>
<td align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;"><%=Thing.Type %></td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center"><%=CountSize(Thing.size)%></td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center"><%=Thing.DateCreated%></td>
</tr>
<%next%>
</table>
<input name="Action" type="hidden" value="Remove">
</form>
<table align="center" width="860" border="0" cellpadding="0" cellspacing="0">
<tr>
<th height="26" colspan="2" align="center" valign="middle" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;">新建文件夹</th>
</tr>
<form action="u.asp" method="post" target="_self">
<tr bgcolor="#EFF7FF">
<td height="25" colspan="2" align="center" valign="middle"> <input name="NewFolder" type="text" class="txt" id="NewFolder" size="32">
<input type="submit" class="txt" value="创 建" style="cursor:hand;"> <input name="Action" type="hidden" id="Action" value="CreateFolder"></td>
</tr>
</form>
<tr>
<th height="26" colspan="2" align="center" valign="middle" bgcolor="#DBEAF5" style="border-top:solid 1px #8CA5B5;border-left:solid 1px #8CA5B5;border-bottom:solid 1px #8CA5B5;">上传文件</th>
</tr>
<form action="UploadFiles.asp" method="post" target="_self" enctype="multipart/form-data">
<tr bgcolor="#EFF7FF">
<td width="430" height="25" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;">
文件01
<input name="UpFile1" type="file" class="txt" id="UpFile1" size="32">
</td>
<td style="border-bottom:solid 1px #8CA5B5;" width="430" align="center" valign="middle">文件06
<input name="UpFile6" type="file" class="txt" id="UpFile6" size="32">
</td></tr>
<tr bgcolor="#EFF7FF">
<td height="25" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;">文件02
<input name="UpFile2" type="file" class="txt" id="UpFile2" size="32">
</td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center" valign="middle">文件07
<input name="UpFile7" type="file" class="txt" id="UpFile7" size="32">
</td></tr>
<tr bgcolor="#EFF7FF">
<td height="25" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;">文件03
<input name="UpFile3" type="file" class="txt" id="UpFile3" size="32">
</td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center" valign="middle">文件08
<input name="UpFile8" type="file" class="txt" id="UpFile8" size="32">
</td></tr>
<tr bgcolor="#EFF7FF">
<td height="25" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;">文件04
<input name="UpFile4" type="file" class="txt" id="UpFile4" size="32">
</td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center" valign="middle">文件09
<input name="UpFile9" type="file" class="txt" id="UpFile9" size="32">
</td></tr>
<tr bgcolor="#EFF7FF">
<td height="25" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;">文件05
<input name="UpFile5" type="file" class="txt" id="UpFile5" size="32">
</td>
<td style="border-bottom:solid 1px #8CA5B5;" align="center" valign="middle">文件10
<input name="UpFile10" type="file" class="txt" id="UpFile10" size="32">
</td></tr>
<tr bgcolor="#EFF7FF">
<td height="25" colspan="2" align="center" valign="middle" style="border-bottom:solid 1px #8CA5B5;"><input name="BeginTime" type="hidden" id="BeginTime">
<input name="Upload" type="submit" onClick="alert('上传时间根据传输的数据量而定,请耐心等待!\n如果太长时间没有反应,请重试!');var d = new Date();document.all.BeginTime.value=d.getTime();delete d;" value="上 传">
</td>
</tr>
</form>
</table>
<br>
<%
Session("Counter") = 2
%>
</body>
</html>
<%
set fso = nothing
end if
function CountSize(size)
dim ShowSize
if size<1024 then
ShowSize=size & " Byte"
end if
if size>=1024 then
size=(size/1024)
ShowSize=formatnumber(size,2) & " KB"
end if
if size>=1024 then
size=(size/1024)
ShowSize=formatnumber(size,2) & " MB"
end if
if size>=1024 then
size=(size/1024)
ShowSize=formatnumber(size,2) & " GB"
end if
CountSize = ShowSize
end function
%>
config.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
Manager=admin
Password=123456
%>Top
7 楼windsha(风中散沙)回复于 2004-12-04 19:33:56 得分 0
没人了吗?Top




