因胸联盟 发表于 2015-1-16 23:14:33

ASP编程:使用adodb.stream间接下载任何后缀的文...

ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用ado|stream|防盗链|下载原作:possible_Y,载自时期教室

在扫瞄器的地点栏里间接输出一个doc或xls或jpg的文件的url路径,那末该文件会间接显现在扫瞄器里。而在良多时分我们但愿能间接弹出下载提醒框让用户下载,我们该怎样办呢?这里有两种办法:
1、设置你的服务器的iis,给doc等后缀名做映照
2、在向客户端发送时设置其contenttype

上面具体申明办法2

<%
Response.Buffer=true
Response.Clear

dimurl
Dimfso,fl,flsize
dimDname
DimobjStream,ContentType,flName,isre,url1
*********************************************挪用时传进的下载文件名
Dname=trim(request("n"))
******************************************************************
IfDname""Then
******************************下载文件寄存的服务端目次
url=server.MapPath("/")&""&Dname
***************************************************
EndIf

Setfso=Server.CreateObject("Scripting.FileSystemObject")
Setfl=fso.getfile(url)
flsize=fl.size
flName=fl.name
Setfl=Nothing
Setfso=Nothing
%>
<%
SetobjStream=Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type=1
objStream.LoadFromFileurl


SelectCaselcase(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"
CaseElse
ContentType="application/octet-stream"
EndSelect



Response.AddHeader"Content-Disposition","attachment;filename="&flName
Response.AddHeader"Content-Length",flsize

Response.Charset="UTF-8"
Response.ContentType=ContentType

Response.BinaryWriteobjStream.Read
Response.Flush
response.Clear()
objStream.Close
SetobjStream=Nothing

%>

将上面的器材存成download.asp然后你就能够用<aherf="http://xxx.xxx.com/download.asp?n=file.doc">download!</a>来下载统一目次下的file.doc了!

可是这里有个成绩就是间接将file.doc路径写在url里是不平安的,以是办理计划应当是将file.doc的路径存到数据库里,同过查找数据库后失掉路径

在这个程序的最后面假如加上一个判别:

ifinstr(Request.ServerVariables("HTTP_REFERER"),"http://你的域名")=0then
Response.End
endif
</p>实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。

简单生活 发表于 2015-1-20 08:33:14

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

不帅 发表于 2015-1-29 06:10:05

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

活着的死人 发表于 2015-2-5 21:08:59

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

飘灵儿 发表于 2015-2-13 13:27:16

在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。

再现理想 发表于 2015-3-3 22:12:19

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write

分手快乐 发表于 2015-3-11 13:58:55

虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。

仓酷云 发表于 2015-3-18 16:53:37

ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。

第二个灵魂 发表于 2015-3-26 05:21:01

哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
页: [1]
查看完整版本: ASP编程:使用adodb.stream间接下载任何后缀的文...