|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天上传|数据|数据库ASP(ActiveServerPages)是Microsoft很早就推出的一种WEB使用程序办理计划,也是尽年夜多半处置网站开辟职员很熟习的一个对照复杂的编程情况。经由过程ASP我们能够创立功效壮大的静态的WEB使用程序。ASP固然功效很壮大,但有些功效用纯ASP代码完成不了,为了能包管开辟出功效加倍壮大的WEB使用程序,我们能够借助挪用COM组件。
在一样平常事情中,比方开辟一个“商品网上发卖体系”吧,为了使主顾对商品的表面有所懂得,也就是主顾在看商品的笔墨先容的同时在笔墨的中间有该商品的图片加以申明,如许主顾就能够对该商品有个体系的懂得,对倾销商品有很年夜的匡助。以是我们在开辟体系时固然就要到场图片处置模块,即怎样把图片上传到服务器(图片能够放在WEB服务器上某一个文件夹里也能够放在SQLServer服务器里)和怎样让上传的图片在扫瞄器端显现出来,这都是开辟职员要思索到的成绩。
上传图片到服务器有多种办法,可使用文件上传组件也能够利用纯ASP代码来完成。在CSDN的WEB版ASP上常常有网友问如许的成绩“怎样使用ASP把图片上传到数据库里”,为了便利CSDN必要懂得这方面的常识,这篇文章将具体解说利用ASP上传图片的做法并给出代码,以飨读者。
起首懂得一下在程序顶用到的各类工具及其语法:
1)Request.BinaryRead()办法
●利用Request.BinaryRead()办法能够猎取提交的文件数据
●语法
VarReValue=Request.BinaryRead(number)
变量VarReValue前往值保留从客户端读取到的二进制数据;
参数number指明要从客户端读取的二进制数据量的巨细。
2)Response.BinaryWrite()办法
●利用Response.BinaryWrite()办法能够从数据库中猎取图片数据并显现到客户真个扫瞄器中。
●语法
Response.BinaryWritedata
参数data是要写进客户端扫瞄器中的二进制数据包。
3)AppendChunk办法
●AppendChunk办法的感化是将二进制数据追加到Field或Parameter工具。
●语法
object.AppendChunkdata
参数data为要追加到Field或Parameter工具中的数据包。
4)GetChunk办法
●GetChunk办法前往二进制数据的内容。
●语法
object.GetChunk(size)
参数size指明要前往二进制数据的长度,能够是长整型表达式。
5)Request.TotalBytes办法
●Request.TotalBytes办法前往从客户端读取到的数据的字节数,这个值跟下面所提到的number绝对应,能够年夜于或即是number值。
●语法
number=Request.TotalBytes
大致懂得了一些办法及其利用办法后,接上去我们就入手下手计划数据库和相干编写代码了。
第一步:数据库的计划(以MsSQLServer7为例):
Createtableimg--创立用来存储图片的表,定名为img
(
idintidentity(1,1)notnull,
imgimage
)
第二步:程序编写,个中省略了用户输出界面,这里只给出很主要的两个文件即图片上传处置(processimg.asp)和显现图片(ShowImg.asp)文件。
1)processimg.asp文件代码:
<P> 〈%
Response.Buffer=True
ImageSize=Request.TotalBytes‘猎取提交数据量的总字节数
ImageData=Request.BinaryRead(ImageSize)‘保留从客户端读取到的数据
‘优化读取到的二进制数据
BnCrLf=chrB(13)&chr(10)
Divider=LeftB(ImageData,Clng(InstrB(ImageData,BnCrLf))-1)
Dstart=InstrB(ImageData,BnCrLf&BnCrLf)+4
Dend=InstrB(Dstart+1,ImageData,Divider)-Dstart
MyData=MidB(ImageData,Dstart,Dend)
‘创立工具实例
SetimgConn=Server.CreateObject(“ADODB.Connection”)
StrConn=”Driver={SQLServer};Server=ServerName;”&_
“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”
imgConn.openstrConn
SetRs=Server.CreateObject(“ADODB.RecordSet”)
Sql=”Select*FromimgWhereidisnull”
Rs.opensql,imgConn,1,3
‘追加数据到数据库
Rs.AddNew
Rs(“img”).AppendChunkmyData
Rs.Update
‘封闭和开释工具
Rs.close
ImgConn.close
SetRs=Nothing
SetImgConn=Nothing
%〉
2)ShowImg.asp文件代码:
〈%
Response.Expires=0
Response.buffer=True
Response.clear
‘创立工具实例
SetimgConn=Server.CreateObject(“ADODB.Connection”)
StrConn=”Driver={SQLServer};Server=ServerName;”&_
“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”
imgConn.openstrConn
SetRs=Server.CreateObject(“ADODB.RecordSet”)
Sql=”SelectimgFromimgWhereid=1”这里的id可使用Request(“id”)取得
Rs.opensql,imgConn,1,1
Response.ContentType=”image/*”
Response.BinaryWriteRs.(“img”).GetChunk(7500000)
‘封闭和开释工具
Rs.close
ImgConn.close
SetRs=Nothing
SetImgConn=Nothing
%〉
至此,本文对怎样利用ASP上传图片的道理和示例都讲完了,有甚么不当的中央请列位斧正,感谢!同时但愿本文可以的确能为必要这方面匡助的网友供应本色性的匡助。
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件 |
|