本文目录
如何用ASP实现文件下载
调用
response.Write(“《a href=down.asp?filename=“&UpLoadPath&ls_array(i+1)&“》“&ls_array
(i)&“《/td》《/tr》“)
down.asp文件内容如下:
《%
Const FilePath = “UploadFile/“ ’文件存放路径
From_url = Cstr(Request.ServerVariables(“HTTP_REFERER“))
Serv_url = Cstr(Request.ServerVariables(“SERVER_NAME“))
Function GetFileName(longname)’/folder1/folder2/file.asp=》file.asp
while instr(longname,“/“)
longname = right(longname,len(longname)-1)
wend
GetFileName = longname
End Function
Dim Stream
Dim Contents
Dim FileName
Dim TrueFileName
Dim FileExt
Const adTypeBinary = 1
FileName = Request.QueryString(“FileName“)
if FileName = ““ Then
Response.Write “无效文件名!“
Response.End
End if
FileExt = Mid(FileName, InStrRev(FileName, “.“) + 1)
Response.Clear
if lcase(right(FileName,3))=“gif“ or lcase(right(FileName,3))=“jpg“ or lcase(right(FileName,3))=“png“ then
Response.ContentType = “image/*“ ’对图像文件不出现下载对话框
else
Response.ContentType = “application/ms-download“
end if
Response.AddHeader “content-disposition“, “attachment; filename=“ & GetFileName(Request.QueryString(“FileName“))
Set Stream = server.CreateObject(“ADODB.Stream“)
Stream.Type = adTypeBinary
Stream.Open
TrueFileName= FilePath &FileName
Response.Write TrueFileName
Response.End
Stream.LoadFromFile Server.MapPath(TrueFileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
%》
ASP下载(不是无理取闹!)ASP高手进,急!!!
web管理系统能下载ASP文件是经过程序特殊处理的,也只有这样这个管理系统才是正常的,不然你的文件上传了想下载就无法实现.当然,它肯定经过了处理,让别的用户无法下载你的ASP文件,只有具有管理权限的人才可以。所以请放心。如果你确实无法放心,你想想FTP工具不是也可以下载ASP文件吗,你的WEB管理工具只不过实现了与FTP管理工具一样的功能而已。
服务器对上传的程序运行要求都会比较严格,因为越不严格,给用户的权限越大,则服务器的安全系数也就越低.所以,他应该不可能让你上传一个独立于它之外的文件管理系统去运行.因此它不会提供FSO等组件,你就无法在线通过你说的管理系统,去删除服务器端的文件、改写服务器端的文件、下载服务器端的ASP文件。所以就算找到了你说的那样的管理系统,你在你的服务器可能可以运行它,传上人家的服务器运行也会显示服务器错误的信息的.
asp中怎么实现下载.
你说的是对的,SMTP是邮件服务器。
至于你说让别人下载文件的话,你可以把下载文件放在网站目录里,然后把文件的相对地址写在链接中就可以了。
ASP 如何实现文件下载
你把要下载的文件名传到下载页面,用request(“fileNameField“)获取文件名
下面这地方改一下
iConcStr = “Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False“ & _
“;Data Source=“ & server.mappath(request(“fileNameField“))
点击下载的地方用《a href=’下载页面路径?fileNameField=要下载的文件名’》下载文件《/a》
这个
-asp下载
asp下载功能代码
《%
Response.Buffer = true
Response.Clear
dim url
Dim fso,fl,flsize
dim Dname
Dim objStream,ContentType,flName,isre,url1
’*********************************************调用时传入的下载文件名
Dname=trim(request(“n“))
’******************************************************************
If Dname《》““ Then
’******************************下载文件存放的服务端目录
url=server.MapPath(“/“)&“\“&Dname
’***************************************************
End If
Set fso=Server.CreateObject(“Scripting.FileSystemObject“)
Set fl=fso.getfile(url)
flsize=fl.size
flName=fl.name
Set fl=Nothing
Set fso=Nothing
%》
《%
Set objStream = Server.CreateObject(“ADODB.Stream“)
objStream.Open
objStream.Type = 1
objStream.LoadFromFile url
Select Case lcase(Right(flName, 4))
Case “.asf“
ContentType = “video/x-ms-asf“
Case “.avi“
ContentType = “video/avi“
Case “.doc“
ContentType = “application/msword“
Case “.zip“
ContentType = “application/zip“
Case “.xls“
ContentType = “application/vnd.ms-excel“
Case “.gif“
ContentType = “image/gif“
Case “.jpg“, “jpeg“
ContentType = “image/jpeg“
Case “.wav“
ContentType = “audio/wav“
Case “.mp3“
ContentType = “audio/mpeg3“
Case “.mpg“, “mpeg“
ContentType = “video/mpeg“
Case “.rtf“
ContentType = “application/rtf“
Case “.htm“, “html“
ContentType = “text/html“
Case “.txt“
ContentType = “text/plain“
Case Else
ContentType = “application/octet-stream“
End Select
Response.AddHeader “Content-Disposition“, “attachment; filename=“ & flName
Response.AddHeader “Content-Length“, flsize
Response.Charset = “UTF-8“
Response.ContentType = ContentType
Response.BinaryWrite objStream.Read
Response.Flush
response.Clear()
objStream.Close
Set objStream = Nothing
%》
将下面的东西存成download.asp然后你就可以用《a herf=“http://xxx.xxx.com/download.asp?n=file.doc“》download!《/a》来下载同一目录下的file.doc了!
-asp下载
关于asp下载路径问题
是这样,所谓迅雷的下载地址是有迅雷提供的。
这些网站都有包含了迅雷提供的一些文件。
另外,xx.asp?id=xx等类似参数是网站程序的功能。
简单的说就是通过这参数来告知程序读取哪一条数据……
每条数据都包含了一个下载地址
id=1就读取第一条数据中的URL
ID=2则……
实例的话,迅雷联盟有提供。你可以过去参考下
另外,你可以在网上搜索一下petercms,这套系统是我初学的时候开发的。
里面就有一个完整的迅雷下载的例子。
-asp下载
asp如何实现文件下载功能
Function downloadFile(strFile)
strFilename = server.MapPath(strFile)
Response.Buffer = True
Response.Clear
Set s = Server.CreateObject(“ADODB.Stream“)
s.Open
s.Type = 1
on error resume next
Set fso = Server.CreateObject(“Scripting.FileSystemObject“)
if not fso.FileExists(strFilename) then
Response.Write(“《h1》Error:《/h1》 文件不存在《p》“)
Response.End
end if
Set f = fso.GetFile(strFilename)
intFilelength = f.size
s.LoadFromFile(strFilename)
if err then
Response.Write(“《h1》Error: 《/h1》“ & err.Description & “《p》“)
Response.End
end if
Response.AddHeader “Content-Disposition“, “attachment; filename=“ &f.name
Response.AddHeader “Content-Length“, intFilelength
Response.CharSet = “UTF-8“
Response.ContentType = “application/octet-stream“
Response.BinaryWrite s.Read
Response.Flush
s.Close
Set s = Nothing
End Function
看这个函数能帮到你吗
-asp下载