网页编程 - asp中用access存取图片

在Asp中存取数据库图片信息在Asp中存取数据库图片信息,必须:

1。用Request.BinaryRead()来获取上传的二进制数据。

2。用ADO.AppendChunk来存入数据库,用ADO.GetChunk来获取数据。

3。用Response.BinaryWrite来显示图片。

参考代码:

上传页面

<HTML>

  <BODY>

    <Form name="MainForm" enctype="multipart/form-data" action="inImage.asp" method="Post">

      <input type=file name=imFile><br>

      <input type=submit name=OK value="UPLOAD">

    </FORM>

  </BODY>

</HTML>

录入页面

<% 

response.buffer= True

formsize = request.totalbytes

formdata = request.binaryread(formsize)

bncrlf=chrB(13)&chrB(10)

divider = leftB(formdata,clng(instrb(formdata,bncrlf))-1)

datastart = instrb(formdata,bncrlf & bncrlf)+4

dataend = instrb(datastart+1,formdata,divider)-datastart

mydata =midb(formdata,datastart,dataend)

set ConnGraph =Server.CreateObject("Adodb.Connection")

  ConnGraph.ConnectString="Driver={...这里就是你的数据库连接串

  ConnGraph.Open

set rec=Server.CreateObject("Adodb.recordst")

  rec.Open "Select * From [Image] where id is null",ConnGraph,1,3

  rec.addnew

  rec("img").appendchunk mydata这句是关键

  rec.update

  rec.close

set rec = Nothing

set ConnGraph = Nothing

%>

显示图片

<%

set ConnGraph =Server.CreateObject("Adodb.Connection")

  ConnGraph.ConnectString="Driver={...这里就是你的数据库连接串

  ConnGraph.Open

set rec=Server.CreateObject("Adodb.recordst")

  strSQL="Select img From [Image] where id ="&trim(request"id"))

  rec.Open strSQL,ConnGraph,1,1

    Response.ContentType = "image/*"

    Response.BinaryWrite rec("img").getChunk(7500000)

  rec.close

setrec = Nothing

set ConnGraph = Nothing

%>