⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admin_fileadmin.aspx

📁 ASP_NET程序设计教程 源代码 冶金工业出版社 肖金秀 冯沃辉 陈少涌
💻 ASPX
字号:
<% @ Import Namespace="Packaging" %>
<% @ Import Namespace="System.Data" %>
<% @ Import Namespace="System.IO" %>
<% @ Import Namespace="Microsoft.VisualBasic" %>
<% @ Register TagPrefix="pb" TagName="Header" Src="header.ascx" %>
<% @ Register TagPrefix="pb" TagName="Footer" Src="footer.ascx" %>
<% @ Register TagPrefix="pb" TagName="Login" Src="login.ascx" %>
<% @ Register TagPrefix="pb" TagName="admin" Src="admin.ascx" %>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta http-equiv="Content-Language" content="zh-cn">
<title>Dot.Net管理区!</title>
<script language="JavaScript">
<!--
function openwin(url,w,h) {
	window.open(url,"","top=50,left=150,height="+h+",width="+w+",toolbar=0,location=0,directories=0,menubar=0,scrollbars=0,resizable=yes,status=0");
}
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);//-->
</script>
<link rel="stylesheet" type="text/css" href="pack.css">
</head>

<body topmargin="6" leftmargin="0" bgcolor="#eaeaea">

<form enctype="multipart/form-data" method="post" runat=server>

<pb:Header id="Header" runat="server" />

<div align="center">
<table border="0" cellpadding="0" cellspacing="1" bgColor="#006699" width="750" height="125">
	<tr><td width="25%" valign="top" background="images/bd.gif" rowspan="2" height="125">
	<pb:admin id="admin" runat="server" />
	<pb:Login id="login" runat="server" />
	</td>
	<td width="75%" valign="top" bgcolor="#FFFFFF" height="228" background="images/ldb.gif">

 <table cellpadding=0 cellspacing=1 width="100%" border="0" align="center">
  <tr height=35>
   <td><b><br><font color=green>上传文件管理</font></b></td>
  </tr>
 </table>
 当前目录:/upload<asp:Label id="cur_dir" bodyerstyle="groove" runat="server" />
          <table border=0 cellpadding="0" cellspacing="1" bgcolor="#006699">
            <tr>
              <td bgcolor="#99CC00"><span id="up_dir" runat=server /></span></td>
            </tr>
</table>
	<ASP:DataGrid id="MyDir" runat="server"
		DataKeyField="name"
		Width="100%"
		Align="center"
		ShowHeader="true"
		ShowFooter="false"
		CellPadding=3
		AutoGenerateColumns="false"
		BorderColor="#00A71C"
		HeaderStyle-BackColor="#99cc00"
		CellSpacing="0"
		OnDeleteCommand="MyDir_Delete"
		AllowPaging="True"
		PageSize="20"
		PagerStyle-Mode="NumericPages"
		PagerStyle-HorizontalAlign="right"
		OnPageIndexChanged="changepage" >
	<AlternatingItemStyle BackColor="#ccff99" />
	<Columns>
		<asp:BoundColumn
			HeaderText="目录/文件"
			DataField="type" />
		<asp:BoundColumn
			HeaderText="名称"
			DataField="name" />
		<asp:BoundColumn
			HeaderText="内容"
			DataField="action" />
		<asp:ButtonColumn
			ButtonType="LinkButton"
			CommandName="Delete"
			Text="删除" />
	</Columns>
    </ASP:DataGrid>
<asp:Label id="error1" runat="server" style="color:red" /><br>
          <table border="0" cellpadding="0" cellspacing="1" width="90%" bgcolor="#006699">
            <tr>
              <td width="22%" align="center" bgcolor="#99CC00">新建文件夹</td>
	          <td width="78%" bgcolor="#CCFF99"> <asp:Textbox id="folder" runat=server size=20 /> 
                <asp:Button id="addfolder" text="新建" onClick="AddFolder_Click" runat=server /> 
              </td>
            </tr>
	<tr>
              <td width="22%" align="center" bgcolor="#99CC00">文件上传</td>
	          <td width="78%" bgcolor="#CCFF99"> 
                <input type="file" runat="server" id="FileUp" />
	</td></tr>
	<tr>
              <td width="22%" align="center" bgcolor="#99CC00">文件改名为</td>
	          <td width="78%" bgcolor="#CCFF99"> <asp:TextBox id="fn" runat="server" maxlength="20"/> 
                <asp:Button id="Submit" text="上传" onclick="Submit_OnClick" runat=server/> 
              </td>
            </tr>
	        <tr bgcolor="#CCFF99"> 
              <td width="100%" colspan="2"><br>
<ul><li>可上传文件类型:jpg、gif、swf、zip、rar; </li></ul>
<asp:Label id="success" runat=server style="color:red" />
<asp:Panel id="fileinfo" runat=server Visible=False>
文件引用地址:<asp:label id=FName runat=server /><br>
                文件大小:<asp:label id=FSize runat=server /><br>
文件类型:<asp:label id=FType runat=server />
</asp:Panel></td></tr>
</table>
	</td>
	<tr><td width="75%" valign="bottom" bgcolor="#FFFFFF" height="80" align="right" background="images/ldb.gif">
	<img border="0" src="images/pen.gif" width="400" height="80"><br>&nbsp;</td></tr>
</table>
</div>

<pb:Footer id="footer" runat="server" />

</form>

</body>

</html>

<script language="VB" runat="server">

	Dim startIndex As Integer

	Sub Page_Load(Sender As Object, e As EventArgs)
		If Not Request.IsAuthenticated Then
			Response.Redirect("login.aspx")
		End If

		If Context.User.Identity.Name<>"crazy" Then
			Response.Redirect("admin.aspx")
		End If

		If Not Page.IsPostBack Then
			startIndex=0
		End If
		BindGrid
	End Sub

	Sub BindGrid()
		Dim cdir As String=Request("dir")
		If cdir="" Or cdir="/" Then
			up_dir.InnerHtml="ROOT"
			cur_dir.text="/"
		Else
			Dim subdir As String
			cur_dir.text=cdir
			subdir=cdir.subString(0,cdir.lastIndexOf("/"))
			up_dir.InnerHtml="<a href=admin_fileadmin.aspx?dir=" & _
				subdir & ">向上</a>"
		End If

		Dim DT As DataTable=New DataTable()
		Dim DR As DataRow
		DT.Columns.Add("name",Type.GetType("System.String"))
		DT.Columns.Add("type",Type.GetType("System.String"))
		DT.Columns.Add("action",Type.GetType("System.String"))
		Dim d As String
		Dim Filesplit(), fd As String
		Dim dir As Directory
		For Each d In dir.GetFileSystemEntries(sPath(cur_dir.text))
			DR=DT.NewRow()
			If File.Exists(d) Then
				Filesplit=split(d,"\")
				fd=Filesplit(Filesplit.Length-1)
				DR(0)=fd
				DR(1)="文件"
				DR(2)="<a href=upload" & rPath(d) & " target=_blank>打开文件</a>"
			Else
				Filesplit=split(d,"\")
				fd=Filesplit(Filesplit.Length-1)
				DR(0)=fd
				DR(1)="目录"
				DR(2)="<a href=admin_fileadmin.aspx?dir=" & rPath(d) & ">向下</a>"
			End If
			DT.Rows.Add(DR)
		Next
		MyDir.DataSource=DT.DefaultView
		MyDir.DataBind()
	End Sub

	Function rPath(ByVal dir As String) As String
		Dim d As String=Server.MapPath("upload")
		dir=replace(dir,d,"")
		dir=replace(dir,"\","/")
		Return dir
	End function

	Function sPath(dir As String) As String
		Dim d As String=Server.MapPath("upload")
		dir=d+dir
		dir=replace(dir,"/","\")
		Return(dir)
	End Function

	Function gPath(dir As String) As String
		Dim d As String=Server.MapPath("upload")
		dir=d+cur_dir.Text+"\"+dir
		dir=replace(dir,"/","\")
		Return(dir)
	End Function

	Sub changepage(Sender As Object, e As DataGridPageChangedEventArgs)
		startIndex=e.NewPageIndex*MyDir.PageSize
		MyDir.CurrentPageIndex=e.NewPageIndex
		BindGrid
	End Sub

	Sub MyDir_Delete(Sender As Object, e As DataGridCommandEventArgs)
		Try
		Dim dir As String=MyDir.DataKeys(E.Item.ItemIndex)
		dir=gPath(dir)
		If file.Exists(dir) Then
			File.Delete(dir)
		Else
			Delete_Dir(dir)
		End If
		BindGrid()
		Catch ex As Exception 
		error1.text=ex.Tostring() '"你不能删除这个文件夹!"
		End Try
	End Sub

	Sub Delete_Dir(dir As String)
		Dim d As String
		For Each d In Directory.GetFileSystemEntries(dir)
			If File.Exists(d) Then
				File.Delete(d)
			Else
				Delete_dir(d)
			End If
		Next
		Directory.Delete(dir)
	End Sub

	Sub Submit_OnClick(Sender As Object, e As EventArgs)
		If FileUp.PostedFile.ContentLength=0 Then
			FileInfo.Visible=False
			success.Text="上传文件长度为0, 上传失败!"
			Exit Sub
		Else
			FSize.Text=CStr(FileUp.PostedFile.Contentlength)
			FType.Text=FileUp.PostedFile.ContentType
			Dim fileSplit() As String=Split(FileUp.PostedFile.filename, "\")
			Dim Filename As String=FileSplit(fileSplit.length-1)
			Dim f As String
			If fn.Text="" Then
				f=Server.MapPath("upload") & cur_dir.Text & "\" & filename
				f=replace(f,"/","\")
				FName.Text="upload" +cur_dir.Text+ "/" + filename
			Else
				f=Server.MapPath("upload") & cur_dir.Text & "\" & fn.Text
				f=replace(f,"/","\")
				FName.Text="upload" + cur_dir.Text+ "/" + fn.Text
			End If
			If File.Exists(f) Then
				success.Text="存在重名文件!上传文件失败!"
			Else
				fileUp.PostedFile.SaveAs(f)
				FileInfo.Visible=True
				success.Text="上传文件成功!<br>"
				BindGrid()
			End If
		End If
	End Sub

	Sub AddFolder_Click(Sender As Object, e As EventArgs)
		Dim subDir As String
		subDir=cur_dir.Text+"/"+folder.Text
		subDir=Server.MapPath("/pack/upload")+subDir
		subDir=replace(subDir,"/","\")
		If Directory.Exists(subDir) Then
			error1.text=folder.Text+"已经存在!"
			folder.text=""
		Else
			Directory.CreateDirectory(subdir)
			folder.text=""
			BindGrid()
		End If
	End Sub
</script>
<style>
td {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size : 10pt;
}
.whiteB {
	color: white;
	font-weight : bold;
}
input {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size : 10pt;
}
td.bar {
	color: green; font-weight: bold;
}
a.whiteLink:link {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-weight : bold;
	color : white;
	text-decoration : none;
}
a.whiteLink:visited {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-weight : bold;
	color : white;
	text-decoration : none;
}
a.whiteLink:hover {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-weight : bold;
	color : white;
	text-decoration : none;
}
a.barLink:link {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : #CCFF99;
	text-decoration : none;
}
a.barLink:visited {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : #CCFF99;
	text-decoration : none;
}
a.barLink:hover {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : #CCFF99;
	text-decoration : underline;
}
a.author:link {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : black;
	text-decoration : none;
}
a.author:visited {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : black;
	text-decoration : none;
}
a.author:hover {
	font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
	color : black;
	text-decoration : underline;
}
</style>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -