2025澳门开彩结果历史记录-2025澳门开彩结果-2025澳门开彩查询记录-2025澳门聚宝盆-2025澳门九点半一肖一码-2025澳门精准资料免费全览

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

asp將圖片保存到access數(shù)據(jù)庫

admin
2010年5月11日 16:11 本文熱度 7297
[p]一般我們上傳圖片都保存在文件目錄下,但有時因為特殊要求需要將圖片保存在數(shù)據(jù)庫,接下來我講一下如何用asp實現(xiàn)將圖片保存到access數(shù)據(jù)庫的方法,具體如下:[/p]
[p]第一步、要制做一個access數(shù)據(jù)庫,我們給它起名字叫images.mdb,該數(shù)據(jù)庫里有兩個字段:id、img,id字段的類型設為自動編號,img字段的類型設為ole對象。 [/p]
[p] [/p]
[p]第二步、設計一個上傳的表單,根據(jù)要求可簡可繁。 [/p]
[p] [/p]
[p]第三步、設計后臺的圖片處理程序,可分為圖片上傳保存程序和圖片讀取程序。 [/p]
[p] [/p]
[p]第四步、圖片顯示。 [/p]
[p] [/p]
[p]下面給出程序并分別做介紹。 [/p]
[p] [/p]
[p]一、 表單程序updata.html [/p]
[p] [/p]
[p]它的功能是為上傳提供一個界面,表單的enctype屬性為multipart/form-data,它是設置表單的mime編碼的,只有使用了它才能完整地傳送文件的數(shù)據(jù)。 [/p]
[p] [/p]
[p][/p]
[p][/p]
[p]
[/p]
[p]
[p]action="process.asp" method="post">[/p]
[p][/p]
[p][/p]
[p]
[/p]
[p]
[/p]
[p][/p]
[p] [/p]
[p]二、 圖片的上傳與保存程序process.asp [/p]
[p] [/p]
[p]<%[/p]
[p]response.buffer=true[/p]
[p]formsize=request.totalbytes[/p]
[p]formdata=request.binaryread(formsize)[/p]
[p]bncrlf=chrb(13) & chrb(10)[/p]
[p]divider=leftb(formdata,clng(instrb(formdata,bncrlf))-1)[/p]
[p]datastart=instrb(formdata,bncrlf & bncrlf)+4[/p]
[p]dataend=instrb(datastart+1,formdata,divider)-datastart[/p]
[p]mydata=midb(formdata,datastart,dataend)[/p]
[p]set conngraph=server.createobject("adodb.connection")[/p]
[p]conngraph.open "provider=microsoft.jet.oledb.4.0;[br]data source=" & server.mappath("images.mdb")[/p]
[p]set rec=server.createobject("adodb.recordset")[/p]
[p]rec.open "select * from images where id is null",conngraph,1,3[/p]
[p]rec.addnew[/p]
[p]rec("img").appendchunk mydata[/p]
[p]rec.update[/p]
[p]rec.closes[/p]
[p]set rec=nothing[/p]
[p]set conngraph=nothing %> [/p]
[p]這段程序的功能是將上傳圖片的數(shù)據(jù)保存到數(shù)據(jù)庫里。下面分句說明各語句的作用。 [/p]
[p] [/p]
[p]response.buffer=true[/p]
[p]formsize=request.totalbytes[/p]
[p]formdata=request.binaryread(formsize) [/p]
[p]打開緩存功能,獲取客戶端總的發(fā)送數(shù)據(jù)量,獲取上傳過來的數(shù)據(jù)。 [/p]
[p] [/p]
[p]bncrlf=chrb(13) & chrb(10)[/p]
[p]divider=leftb(formdata,clng(instrb(formdata,bncrlf))-1) [/p]
[p]這兩個語句的意思是設一個二進制回車符及得到一個divider分隔符,目的是為了確定圖片的位置。 [/p]
[p] [/p]
[p]datastart=instrb(formdata,bncrlf & bncrlf)+4[/p]
[p]dataend=instrb(datastart+1,formdata,divider)-datastart[/p]
[p]mydata=midb(formdata,datastart,dataend) [/p]
[p]以上三個語句是確定圖片數(shù)據(jù)的起始位置、結束位置及實際圖片的數(shù)據(jù)。 [/p]
[p] [/p]
[p]set conngraph=server.createobject("adodb.connection")[/p]
[p]conngraph.open "provider=microsoft.jet.oledb.4.0;[br]data source=" & server.mappath("images.mdb") [/p]
[p]創(chuàng)建connection對象,并連接microsoft access數(shù)據(jù)庫。 [/p]
[p] [/p]
[p]set rec=server.createobject("adodb.recordset")[/p]
[p]rec.open "select * from images where id is null",conngraph,1,3[/p]
[p]rec.addnew[/p]
[p]rec("img").appendchunk mydata [/p]
[p]創(chuàng)建recordset對象,打開數(shù)據(jù)庫并置為寫入狀態(tài),執(zhí)行rec.addnew增加一條新記錄,調(diào)用field對象的appendchunk方法將圖片數(shù)據(jù)保存到數(shù)據(jù)庫表的字段中。 [/p]
[p] [/p]
[p]后邊幾句關閉數(shù)據(jù)庫,釋放定義組件的設置。 [/p]
[p] [/p]
[p]三、 圖片的讀取程序showing.asp [/p]
[p] [/p]
[p]<%[/p]
[p]set conngraph=server.createobject("adodb.connection")[/p]
[p]conngraph.open "provider=microsoft.jet.oledb.4.0;[br]data source=" & server.mappath("images.mdb")[/p]
[p]set rec=server.createobject("adodb.recordset")[/p]
[p]id=trim(request.querystring("id"))[/p]
[p]strsql="select img from images where id="&request.querystring("id")&""[/p]
[p]rec.open strsql,conngraph,1,1[/p]
[p]response.contenttype = "image/gif"[/p]
[p]response.binarywrite rec("img").getchunk(7500000)[/p]
[p]rec.close[/p]
[p]set rec=nothing[/p]
[p]set conngraph=nothing[/p]
[p]%> [/p]
[p]以上程序是顯示圖片的后臺程序,主要功能是按照要求的id號讀取數(shù)據(jù)庫中圖片的數(shù)據(jù)。 [/p]
[p] [/p]
[p]response.binarywrite rec("img").getchunk(7500000) [/p]
[p]這里調(diào)用了field對象的getchunk(size)方法,size是字節(jié)數(shù)。 [/p]
[p] [/p]
[p]需要注意的是使用response對象的 contenttype屬性時mime類型的設置,我們這里將返回數(shù)據(jù)的類型設為圖形方式即image/gif方式,它可以顯示gif或jpg格式的圖形,如果設置為image/*,程序在執(zhí)行時將不能顯示圖片。 [/p]
[p] [/p]
[p]四、 圖片的顯示程序show.html [/p]
[p] [/p]
[p]圖片上傳保存到數(shù)據(jù)庫里就可以調(diào)用程序顯示圖片了,我們再做一個表單程序,提供要顯示圖片的id號。 [/p]
[p] [/p]
[p][/p]
[p][/p]
[p]
[/p]
[p]
[p]action="showing.asp" method="get">[/p]
[p]請輸入要顯示圖片的序號:[/p]
[p][/p]
[p]
[/p]
[p]
[/p]
[p][/p]
[p][/p]

該文章在 2010/5/11 16:11:09 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關報表等業(yè)務管理,結合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 水果奶奶资料app | 118网址之家l258c | 管家婆2025正版资料 | 港澳宝典去哪下载 | 49图库app软件合集 | 澳门六开彩天天正版免费资料大全 | 2025澳门免费最精准龙门客栈 | 新澳门免费资料大全精准版下 | 7777788888精准一肖中特 | 今晚澳门2025最准的资料 | 2025年澳门免费全年资料 | 新2025年澳门天天开好彩021期28 新2025年澳门天天开好彩 | 澳门近期的历史记录 | 今晚澳门9点35分开奖结果025期16 | 2025管家婆三期必出一码 | 2o24澳门正版精准资料 | 管家婆一肖一码最准资料公开 | 一码一肖100准确免费高清无水印下载 | 2025香港人才引进政策详解 | 小鱼儿而域名请记住1961cm | 港澳宝典11666正规吗v港澳宝典 | 澳门正板资料图库49853 | 澳门彩资料免费查询综合信息服务 | 关于澳门的资料有哪些澳门 | 一组三中三免费公开网站 | 2025全年澳门与香港免费资料资料 | 今期管家婆大图彩图142期 | 今晚澳门夜城资料 | 118图库彩图库2025年下载安装 | 最准一肖一码100%澳门 | 今日闲情论坛资料最新 | 2025年正版管家婆图库平台 | 7777788888精准新传 | 澳门正版今晚现场直播 | 澳门六开全部免费资料2025 | 神算子玄机心水资料论坛 | 澳门今晚必中一消 | 新奥2025年免费资料大全概览 | 新澳2025正版资料全年正版公开 | 澳门期期准一期 | 2025年正版资料免费大 |