佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > ASP上傳圖片功能的又一實(shí)現(xiàn)(OLE對象)

ASP上傳圖片功能的又一實(shí)現(xiàn)(OLE對象)

熱門標(biāo)簽:科大訊飛語音識別系統(tǒng) 團(tuán)購網(wǎng)站 阿里云 Linux服務(wù)器 銀行業(yè)務(wù) Mysql連接數(shù)設(shè)置 電子圍欄 服務(wù)器配置
上次說到的上傳圖片是采用稻香老農(nóng)開發(fā)的無組件上傳。其上傳過程是將圖片先保存到指定文件夾,與此同時將該路徑保存至數(shù)據(jù)庫字段的。顯示圖片則是根據(jù)數(shù)據(jù)庫表中的路徑字段對應(yīng)顯示的。當(dāng)然有關(guān)圖片的管理,比如刪除:只刪除了路徑,實(shí)際的圖片需要根據(jù)該路徑通過FSO進(jìn)行刪除……

那有沒有這樣一種情況:將圖片直接作為一個字段的值保存。對圖片的操作就象是對數(shù)據(jù)字段的操作一樣熟練。答案是肯定的,只是將該字段的類型設(shè)為OLE對象

知識點(diǎn):OLE 對象字段用來存儲諸如 Microsoft Word 或 Microsoft EXCEL 文檔、圖片、聲音的數(shù)據(jù)以及在別的程序中創(chuàng)建的其他類型的二進(jìn)制數(shù)據(jù)。OLE 對象可以鏈接或嵌入到 Microsoft Access 表的字段中。

一、設(shè)計數(shù)據(jù)庫testimg.mdb

為方便調(diào)試,設(shè)計表imgurl,其中兩個字段:id(自動編號、關(guān)鍵字)、img(OLE 對象)

二、連接數(shù)據(jù)庫文件conn.asp



%
db_path="testimg.mdb"
set conn=server.CreateObject("ADODB.connection")
connstr="driver={Microsoft Access Driver (*.mdb)};dbq="server.MapPath(db_path)
conn.open connstr
%>



三、提供上傳圖片的表單頁面upload.html



form action="upload.asp" method="post" enctype="multipart/form-data">
  input type="file" name="imgurl">
  input type="submit" name=ok value="ok">
/form>



四、接受數(shù)據(jù)并添加記錄頁upload.asp



!--#include file="conn.asp"-->
%
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13)chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlfbncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
set rs=server.createobject("ADODB.recordset")
rs.open "SELECT * FROM imgurl",conn,3,3
rs.addnew
rs("img").AppendChunk myData
rs.update
rs.close
set rs=nothing
set conn=nothing
response.redirect "index.asp"
%>



五、提取數(shù)據(jù)庫表中圖片字段內(nèi)容以做顯示圖片頁showimg.asp



!--#include file="conn.asp"-->
%
set rs=server.createobject("ADODB.recordset")
sql="select * from imgurl where id="trim(request("id"))
rs.open sql,conn,1,1
Response.ContentType="image/*"
Response.BinaryWrite rs("img").getChunk(8000000)
rs.close
set rs=nothing
set conn=nothing
%>



六、顯示圖片的index.asp



!--#include file="conn.asp"-->
%
strsql="select * from imgurl"
set rs=server.createobject("ADODB.recordset")
rs.open strsql,conn,1,1
do until rs.eof
whatid=rs("id")
%>
img src="showimg.asp?id=%=whatid%>">

%
rs.movenext
loop%>

標(biāo)簽:廣元 蚌埠 萍鄉(xiāng) 衢州 衡水 大理 江蘇 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP上傳圖片功能的又一實(shí)現(xiàn)(OLE對象)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    镇远县| 岑溪市| 浑源县| 红桥区| 绍兴市| 邹城市| 封开县| 哈尔滨市| 榕江县| 宝清县| 吐鲁番市| 东港市| 安顺市| 延津县| 皮山县| 景德镇市| 博罗县| 来宾市| 玉林市| 福清市| 静宁县| 洛浦县| 镇坪县| 临高县| 康乐县| 岳阳县| 日照市| 海宁市| 贡觉县| 屏南县| 沐川县| 青冈县| 博湖县| 容城县| 丹凤县| 义乌市| 禄丰县| 新昌县| 灌南县| 醴陵市| 武胜县|