ASP上传图片功能的另一种实现(OLE对象)

上次上传的图片是在稻香村的发展无组件上传。上传过程是将图片保存到指定的文件夹并保存路径到数据库字段的同时,显示画面上显示的路径的基础上,在数据库表。当然,这幅画的管理,如删除:只能删除路径,实际图片需要删除该路径通过FSO…

没有这种情况:将图片直接保存为一个字段的值。图片的操作和数据字段的操作一样熟练。答案是肯定的,只有字段的类型被设置为OLE对象。

知识点:OLE对象字段用于存储诸如微软Word或微软Excel文档、图片、声音和其他程序中创建的其他二进制数据类型的数据。OLE对象可以链接或嵌入到微软访问表的字段中。

1。设计数据库testimg.mdb

为了调试方便,设计表imgurl,这两个字段:ID(自动编号,关键字),和IMG(OLE对象)

两。数据库连接文件conn.asp







<
db_path =测试.mdb
设置conn = server.createobject(数据连接)
connstr =司机= {微软Access Driver(* .mdb)};DBQ =server.mappath(db_path)
conn.open connstr
%>



三。上传图片的形式提供一个页面upload.html








U3000 U3000
U3000 U3000




四。接受数据并添加记录页面upload.asp








<
formsize = request.totalbytes
表格数据= request.binaryread(formsize)
bncrlf = ChrB ChrB(10)(13)
分频器= LEFTB(表单,CLng(instrb(表单,bncrlf))- 1)
= instrb(表单资料入手,bncrlfbncrlf)+ 4
DATAEND = instrb(资料入手+ 1、表单、分频器)-资料入手
MYDATA =多重交替焙烘显影工艺(表单、资料入手,DATAEND)
集= server.createobject(ADODB。记录集)
rs.open选择*从imgurl
rs.addnew
RS(IMGAppendChunk myData)。
rs.update
关闭
设置=无
设置conn =没有
response.redirect 指标。ASP
%>



五。显示网页中的图片showimg.asp数据库表中的字段的内容,提取图片








<
集= server.createobject(ADODB。记录集)
SQL =SELECT * FROM imgurl id是修剪(请求(ID))
rs.open sql,Conn,1,1
响应。ContentType =图像 / *
response.binarywrite RS(IMG)。GetChunk(8000000)
关闭
设置=无
设置conn =没有
%>



六。显示图片的index.asp








<
如何=SELECT * FROM imgurl
集= server.createobject(ADODB。记录集)
Rs.open strSql,Conn,1
直到rs.eof做
whatid = RS(ID)
%>
>

<
移到下一项
环%>