深爱那片海 发表于 2015-1-16 23:33:35

ASP网页设计真正无组件图文夹杂上传,功能壮大,无...

asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关.上传|数据|数据库|无组件|中文受本论坛某些帖子启示,因而下手编写了这个程序。该程序撑持任何文本和二进制格局文件的上传;撑持文件表单域和一般表单域夹杂上传;撑持中文文件名;撑持掩盖上传和文件同名时主动修正文件名;撑持同时上传多个文件,并且多个文件表单域名能够不异;撑持上传文件巨细的把持……我本人感到很不错哟:)
本程序不必任何数据库撑持,间接将上传的文件保留到服务器指定的路径下。
测试情况:Windows2000+IIS5.0(对ADO版本有请求)
已知BUG:使用不异文件表单名以独一文件名体例同时上传多个文件,且服务器上存在多个不异文件名时,只要第一个文件会主动更名上传乐成,然后程序报错。
源代码以下,接待人人参考斧正:

文件名:UploadX.asp
<%
DimFormData,FormSize,Divider,bCrLf
FormSize=Request.TotalBytes
FormData=Request.BinaryRead(FormSize)
bCrLf=ChrB(13)&ChrB(10)
Divider=LeftB(FormData,InStrB(FormData,bCrLf)-1)

将上传的文件保留到path所指定的目次上面。
Formfield上传表单的"file"域名
Path要保留文件的服务器相对路径,情势为:"d:pathsubpath"或"d:pathsubpath"
MaxSize限定上传文件的最年夜长度,以KByte为单元
SavType服务器保留文件的体例:
0独一文件名体例,假如有同名则主动更名;
1报错体例,假如有同名则堕落;
2掩盖体例,假如有同名则掩盖本来的文件
FunctionSaveFile(FormFileField,Path,MaxSize,SavType)
DimStreamObj,StreamObj1
SetStreamObj=Server.CreateObject("ADODB.Stream")
SetStreamObj1=Server.CreateObject("ADODB.Stream")
StreamObj.Mode=3
StreamObj1.Mode=3
StreamObj.Type=1
StreamObj1.Type=1
SaveFile=""
StartPos=LenB(Divider)+2
FormFileField=Chr(34)&FormFileField&Chr(34)
IfRight(Path,1)""Then
Path=Path&""
EndIf
DoWhileStartPos>0
strlen=InStrB(StartPos,FormData,bCrLf)-StartPos
SearchStr=MidB(FormData,StartPos,strlen)
IfInStr(bin2str(SearchStr),FormFileField)>0Then
FileName=bin2str(GetFileName(SearchStr,path,SavType))
IfFileName""Then
FileStart=InStrB(StartPos,FormData,bCrLf&bCrLf)+4
FileLen=InStrB(StartPos,FormData,Divider)-2-FileStart
IfFileLen<=MaxSize*1024Then
FileContent=MidB(FormData,FileStart,FileLen)
StreamObj.Open
StreamObj1.Open
StreamObj.WriteFormData
StreamObj.Position=FileStart-1
StreamObj.CopyToStreamObj1,FileLen
IfSavType=0Then
SavType=1
EndIf
StreamObj1.SaveToFilePath&FileName,SavType
&nbsp</p>在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。

变相怪杰 发表于 2015-1-20 09:51:41

最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。

乐观 发表于 2015-1-20 15:00:10

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

透明 发表于 2015-1-29 11:50:12

下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...

因胸联盟 发表于 2015-2-2 14:37:49

接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。

第二个灵魂 发表于 2015-2-7 22:53:25

多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。

灵魂腐蚀 发表于 2015-2-23 12:57:48

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

金色的骷髅 发表于 2015-3-7 09:04:30

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

飘飘悠悠 发表于 2015-3-14 16:01:06

代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。

小女巫 发表于 2015-3-21 11:50:09

作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
页: [1]
查看完整版本: ASP网页设计真正无组件图文夹杂上传,功效壮大,无...