upload.aspx
来自「《ASP.NET C#程序设计案例教程》」· ASPX 代码 · 共 76 行
ASPX
76 行
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script language="VB" runat="server">
Sub Enter_Click(sender As Object, e As EventArgs)
'只有客户提交了文件和文件说明才继续执行
If uploadfile.PostedFile.FileName<>"" And Intro.Text<>"" Then
'第一步:获取上传的文件的各种信息,以备后面使用***********************
'下面变量分别表示文件的名称,文件MIME类型,和文件说明和文件大小
Dim filename,fileContentType,fileintro As String
Dim filesize as Long
'Path.GetFileName方法可以从任何一个路径字符串中获取文件名称
filename= Path.GetFileName(uploadfile.PostedFile.FileName)
filesize=uploadfile.PostedFile.ContentLength
fileContentType=uploadfile.PostedFile.ContentType
fileintro=intro.Text
'下面调用函数进行判断,如果文件名已经存在,则提示更新文件名称,否则保存
If FileExist(filename)=True Then
message.Text = "该文件已经存在,请更新名称"
Else
'首先保存文件
Dim filepath As String 'filepath是服务器端保存上传文件的完整路径
filepath=Server.Mappath("upload") & "\" & filename
uploadfile.PostedFile.SaveAs(filepath) '保存上传文件到upload文件夹中
'下面将有关信息添加到数据库中
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("temp.mdb"))
Dim cmd As New OleDbCommand("Insert Into uploadfile(filename,filesize,fileintro,fileContentType,submit_date) Values(@filename,@filesize,@fileintro,@fileContentType,@Submit_Date)", conn)
'给参数赋值
cmd.Parameters.Add(New OleDbParameter("@filename", OleDbType.Char,50))
cmd.Parameters("@filename").Value=filename
cmd.Parameters.Add(New OleDbParameter("@filesize", OleDbType.Integer))
cmd.Parameters("@filesize").Value=filesize
cmd.Parameters.Add(New OleDbParameter("@fileintro", OleDbType.Char,250))
cmd.Parameters("@fileintro").Value=fileintro
cmd.Parameters.Add(New OleDbParameter("@fileContentType", OleDbType.Char,50))
cmd.Parameters("@fileContentType").Value=fileContentType
cmd.Parameters.Add(New OleDbParameter("@submit_date", OleDbType.Date))
cmd.Parameters("@submit_date").Value=Now()
'执行操作,插入记录
conn.open()
cmd.ExecuteNonQuery()
conn.close()
'重定向回首页
Response.Redirect("index.aspx")
End If
End If
End Sub
'下面的函数用来判断该文件名是否已经存在
Function FileExist(filename As String) As Boolean
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("temp.mdb"))
Dim strSql As String = "Select Count(*) As Total From uploadfile Where filename='" & filename & "'"
Dim cmd As New OleDbCommand(strSql, conn)
conn.Open
If cmd.ExecuteScalar()>0 Then 'ExecuteScalar会返回第1行第1列的字段值,也就是记录总数
FileExist=True
Else
FileExist=False
End If
conn.Close
End Function
</script>
<html>
<body>
<h4 align="center">上传文件</h4>
<form enctype="multipart/form-data" runat="server">
选择文件:<input id="uploadfile" type="file" runat="server">
<br>文件说明:<asp:textbox id="intro" runat="server"/>
<br><asp:Button id="enter" Text="提交" OnClick="Enter_Click" runat="server"/>
<asp:Label id="message" runat="server"/>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?