万卷书   首页 > 电脑书籍 > Asp > 如何利用ASP把图片上传到数据库
 

   第二步:程序编写,其中省略了用户输入界面,这里只给出很重要的两个文件即图片上传处理(processimg.htm)和显示图片(ShowImg.htm)文件。

   1) processimg.htm文件代码:

   〈%

   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)

   ‘创建对象实例

   Set imgConn=Server.CreateObject(“ADODB.Connection”)

   StrConn=”Driver={SQL Server};Server=ServerName;”& _

“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”

   imgConn.open strConn

   Set Rs= Server.CreateObject(“ADODB.RecordSet”)

   Sql=”Select * From img Where id is null”

   Rs.open sql,imgConn,1,3

   ‘追加数据到数据库

   Rs.AddNew

   Rs(“img”).AppendChunk myData

   Rs.Update

   ‘关闭和释放对象

   Rs.close

   ImgConn.close

   Set Rs=Nothing

   Set ImgConn=Nothing

   %〉

   2) ShowImg.htm文件代码:

   〈%

   Response.Expires = 0

   Response.buffer=True

   Response.clear

   ‘创建对象实例

   Set imgConn=Server.CreateObject(“ADODB.Connection”)

   StrConn=”Driver={SQL Server};Server=ServerName;”& _

“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”

   imgConn.open strConn

   Set Rs= Server.CreateObject(“ADODB.RecordSet”)

   Sql=”Select img From img Where id=1” 这里的id可以使用Request(“id”)获得

   Rs.open sql,imgConn,1,1

   Response.ContentType=”image/*”

   Response.BinaryWrite Rs.(“img”).GetChunk(7500000)

   ‘关闭和释放对象

   Rs.close

   ImgConn.close

   Set Rs=Nothing

   Set ImgConn=Nothing

   %〉

   至此,本文对如何使用ASP上传图片的原理和示例都讲完了,有什么不妥的地方请各位指正,谢谢!同时希望本文能够确实能为需要这方面帮助的网友提供实质性的帮助。(csdn)


上一页