一个图片数据的存和取的示例

    技术2022-05-11  65

    一个图片数据的存和取的示例

    图片数据存入数据库:        sqlstr="select * from "&tbname&" where id is null"        set rs=server.createobject("adodb.recordset")        rs.Open sqlstr,conn,1,3        rs.AddNew ()        rs("title")=title        rs("filename")=filename        rs("filetype")=filetype        rs("thelevel")=thelevel        rs("uploaddate")=date()        rs("uploadip")=request.ServerVariables("REMOTE_ADDR")        rs("contenttype")=contenttype        rs("data").AppendChunk (binstr)        rs("size")=size        rs("offset")=offset        rs.Update         rs.Close()

    读取显示:    rs.Open sqlstr,conn,3    if not rs.EOF then            contenttype=rs("contenttype")            binstr=rs("data").GetChunk(rs("size")+rs("offset"))            if rs("offset")=1 then                binstr=midb(binstr,2)            end if            if instr(contenttype,"text/")=1 or _               instr(contenttype,"image/")=1 or _               instr(contenttype,"application/msword")=1 then                response.contenttype=trim(contenttype)                response.binarywrite binstr            else                response.addheader "Content-Disposition","attachment;filename="""&rs("filename")&""""                response.contenttype=trim(contenttype)                response.binarywrite binstr            end if            if request("preview")<>"yes" then                sqlstr="update "&tbname&" set downtimes=downtimes+1 where id="&fileid                conn.Execute sqlstr            end if    end if说明:对于超长的二进制数据(如图像数据)要使用fieldname.AppendChunk() 和fieldname.GetChunk()来读写。

     


    最新回复(0)