文件从客户端上传至服务器的一个文件夹后,如何在首页显示这个文件的链接?(新手,不知如何处理)

zhanghaifeng 2005-07-12 10:47:31
文件从客户端上传至服务器的一个文件夹后,如何在首页显示这个文件的链接?(新手,不知如何处理)哪位好心的大哥大姐能帮忙解决一下?最好能有完整的源码。

这是上传过程的代码:
<Script Language="VB" Runat="Server">
Sub Upload(sender As Object, e As Eventargs)
If myFile.PostedFile.ContentLength = 0 Then
Result.Text = "上传失败或指定的文件不存在"
FileInfo.Visible = False
Else
'获取文件名称
Dim Route() As String = Split(myFile.PostedFile.FileName, "\")
Dim FileName As String = Route(Route.Length - 1)

'保存文件
myFile.PostedFile.SaveAs(Server.MapPath(".") & "\Files\" & FileName)

'显示上传结果
FileInfo.Visible = True
Result.Text = "上传成功"
FName.Text = FileName
FSize.Text = Math.Round(myFile.PostedFile.ContentLength / 1024, 2) & "KB"
FType.Text = myFile.PostedFile.ContentType
End If
End Sub
</Script>
<Html>
<Head>
<Title>文件上传</Title>
</Head>
<Body>

<P>
文件上传
</P>
<Form Runat="Server" Enctype="multipart/form-data">
<Center>
文件位置:
<Input Type="File" Runat="Server" Id="myFile" Size="50"><Br><Br>
<Asp:Button Runat="Server" Text="上传" OnClick="Upload" />
<Input Type="Reset" Value="重新设置">
<Hr><H1><Asp:Label Runat="Server" Id="Result" /></H1>
</Center>
<Asp:Panel Runat="Server" Id="FileInfo" Visible="False">
文件名称:<Asp:Label Runat="Server" Id="FName" /><Br>
文件大小:<Asp:Label Runat="Server" Id="FSize" /><Br>
文件类型:<Asp:Label Runat="Server" Id="FType" /><Br>
</Asp:Panel>
</Form>
</Body>
</Html>
...全文
128 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanghaifeng 2005-07-14
  • 打赏
  • 举报
回复
上传、写入数据库都不成问题,只是文件名写入数据库后,如何在首页自动显示出来的过程请指点一下。
karykwan 2005-07-13
  • 打赏
  • 举报
回复
FName.Text不是得到文件名了吗?
这里再定一个存入库的操作,把FName.Text存到相应的库
前台直接用查询不就出来了
colinliu 2005-07-13
  • 打赏
  • 举报
回复
<a href=http://www.yoursite.com/files/yourfile>filename</a>
pgy8288 2005-07-13
  • 打赏
  • 举报
回复
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click
If Session("auth") = "a" Or Session("auth") = "n" Then
If FileUp.PostedFile.ContentLength = 0 Then
FileInfo.Visible = False
Exit Sub
Else
FileInfo.Visible = True
End If

Dim FileSplit() As String = Split(FileUp.PostedFile.FileName, "\")
Dim FileName As String = FileSplit(FileSplit.Length - 1)

Dim Exts() As String = Split(FileName, ".")
Dim Ext As String = LCase(Exts(Exts.Length - 1))
If Ext.ToLower = drplType.SelectedItem.Value.ToLower Then
FDisplay.Visible = True
FSize.Text = "上传文件大小 " & CStr(FileUp.PostedFile.ContentLength / 1024) & " K字节"
FName.Text = "上传文件文件 " & FileUp.PostedFile.FileName
FileName = txtid.Text.ToString + txtName.Text.ToString + "." + drplType.SelectedItem.Value.ToString
FileUp.PostedFile.SaveAs(Server.MapPath(".") & "\Upload\" & drplType.SelectedItem.Value.ToString & "\" & FileName)
FDisplay.Text = "<A Target='_blank' HREF='Upload/" & drplType.SelectedItem.Value & "/" & FileName & "'>上传文件</A>"
Send("./Upload/" & drplType.SelectedItem.Value & "/" & FileName) '将文件的路径保存进数据库,根据文件类型自动选择目录
Else
FDisplay.Text = "请选择正确的文件格式"
End If
Else
Response.Write("<script language='Javascript'>alert('只有管理员和设计人员才能上传\n\n如有疑问请和管理员联系');</" & "script>")
End If
End Sub
Sub Send(ByVal fname As String)
Dim Type As String = drplType.SelectedItem.Value
Dim Banben As String = txtBanben.Text
Dim FileName As String = txtName.Text
Dim cmdStr As String
conMyData = New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
cmdStr = "Insert into Document(id,banben,bbname,counts,type,uid,creatTime,bakText,fileroad,flag,uname,zt,viewtool) Values(@id,@banben,@bbname,0,@type,@uid,@ctime,@bak,@road,@flag,@uname,@zt,@vtool)"
cmdSelect = New SqlCommand(cmdStr, conMyData)
cmdSelect.Parameters.Add("@id", txtid.Text)
cmdSelect.Parameters.Add("@banben", Banben)
cmdSelect.Parameters.Add("@bbname", FileName)
cmdSelect.Parameters.Add("@type", drplType.SelectedItem.Value)
cmdSelect.Parameters.Add("@ctime", DateTime.Now())
cmdSelect.Parameters.Add("@bak", txtBak.Text)
cmdSelect.Parameters.Add("@road", fname)
cmdSelect.Parameters.Add("@flag", DrplLeixing.SelectedItem.Value)
cmdSelect.Parameters.Add("@zt", drplFlag.SelectedItem.Value)
cmdSelect.Parameters.Add("@uname", txtCuser.Text)
cmdSelect.Parameters.Add("@uid", Session("id"))
cmdSelect.Parameters.Add("@vtool", DropDownList1.SelectedItem.Value)
conMyData.Open()
cmdSelect.ExecuteNonQuery()
conMyData.Close()
cleartext()
End Sub
Sub cleartext()
txtid.Text = ""
txtBanben.Text = ""
txtName.Text = ""
txtBak.Text = ""
txtCuser.Text = ""
End Sub

Private Sub drplType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles drplType.SelectedIndexChanged
If drplType.SelectedItem.Value = "doc" Then
DropDownList1.SelectedIndex = 0
DropDownList1.SelectedItem.Value = "word"
ElseIf drplType.SelectedItem.Value = "xls" Then
DropDownList1.SelectedIndex = 1
DropDownList1.SelectedItem.Value = "Excel"
ElseIf drplType.SelectedItem.Value = "dwg" Then
DropDownList1.SelectedIndex = 2
DropDownList1.SelectedItem.Value = "Autocad"
ElseIf drplType.SelectedItem.Value = "catpart" Then
DropDownList1.SelectedIndex = 3
DropDownList1.SelectedItem.Value = "CATIA"
ElseIf drplType.SelectedItem.Value = "pfm" Then
DropDownList1.SelectedIndex = 4
DropDownList1.SelectedItem.Value = "CIMATRON"
ElseIf drplType.SelectedItem.Value = "prt" Then
DropDownList1.SelectedIndex = 5
DropDownList1.SelectedItem.Value = "UG"
Else
DropDownList1.SelectedIndex = 6
DropDownList1.SelectedItem.Value = "Proe"
End If
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
cleartext()
End Sub
codeangel 2005-07-13
  • 打赏
  • 举报
回复
Server.MapPath(".") & "\Files\" & FileName
文件路径,将他写入数据库,再提取出来就行了
极客行天下 2005-07-12
  • 打赏
  • 举报
回复
如果文件保存在该应用程序目录下:
<a href=http://www.yoursite.com/files/yourfile>filename</a>
zhanghaifeng 2005-07-12
  • 打赏
  • 举报
回复
我也知道要加一条记录,可是不知道具体过程如何操作。
JzeroBiao 2005-07-12
  • 打赏
  • 举报
回复
上传后在数据库加一条记录.

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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