ASP 精華源碼收集(五年總結)第8/20頁
更新時間:2008年10月20日 22:58:16 作者:
在5年的開發(fā)中,總結出來的一些源碼
從ASP調用SQL中的圖像:
如 何處理ASP中的圖象 在用ASP編程中,很多時侯要用到圖象。對于單純從數據庫中處理一個圖象,方法大家講了很多,也不難, 可以看下面的代碼: 這里假設你有個數據庫名字叫:PUBS,在數據庫中有一個叫:PUB_INFO的表,在表中有一個LOGO 的BLOB列。我們查出PUB_ID=0736的人的相片。 FILE: SHOWIMG.ASP *************************************** < %@ LANGUAGE="VBSCRIPT" %> < % ' Clear out the existing HTTP header information Response.Expires = 0 Response.Buffer = TRUE Response.Clear ' Change the HTTP header to reflect that an image is being passed. Response.ContentType = "image/gif" Set cn = Server.CreateObject("ADODB.Connection") ' The following open line assumes you have set up a System DataSource ' by the name of myDSN. cn.Open "DSN=myDSN;UID=sa;PWD=;DATABASE=pubs" Set rs = cn.Execute("SELECT logo FROM pub_info WHERE pub_id='0736'") Response.BinaryWrite rs("logo") Response.End %> ***************************************** 執(zhí)行這個ASP文件就可以看到你存在數據庫中的圖象了。 但如果是同時處理文字和圖象就會有些困難了:-( 比如:一個企業(yè)的人員管理,后臺數據庫可以用SYBASE或SQL SERVER等。(我在這用SQL SERVER)當 你在企業(yè)內部需要用到BROWSE/SERVER方式,即用瀏覽器查看員工的個人信息時,就即要處理文字信息同時 還要用到關于圖象的技巧。 問題在于你顯示文字信息時HTML的HEAD中的CONTENT=“TEXT/HTML”,而顯示圖象則必須是 CONTENT=“IMAGE/GIF”或者是CONTENT=”IMAGE/JPEG“。因此你是無法只用一個ASP文件就把文字信息和 圖象都處理完的,解決的辦法是:用一個單獨的ASP文件處理圖象,然后在處理文字信息的ASP文件中調用 這個ASP文件。 在這給大家介紹一個我的解決方法,希望大家一起討論: 環(huán)境:WINNT4.0 SQL SERVER IIS3.0 數據庫名:RSDA 表名:RSDA_TABLE 目的:從RSDA_TABLE中查出ID=00001的人員的信息,包括姓名,年齡和照片 第一步:創(chuàng)建一個查詢表單RSDA.HTM: ********************************** < html> < head> < /head> < body> < form method="POST" action="SEARCH.ASP"> < p>請輸入編號:< input type="text" name="T1" size="20"> < input type="submit" value="提交" name="B1"> < /form> < /body> *********************************** 第二步:建立SEARCH.ASP *********************************** < html> < head> < meta http-equiv="content-type" content="text/html;charset=gb2312"> < title>查詢結果< /title> < /head> < body bgColor=Azure> < % session("RSDA_ID")=Request.Form("T1") '這里我用了一個SESSION變量,是為了在處理圖象的ASP文件中再次調用 temp_id=session("RSDA_ID") < font size=4 color=OrangeRed> 查詢結果:< /font> < %set conntemp=server.createobject("adodb.connection") conntemp.open "dsn=RSDA;uid=sa;pwd=SA" set rstemp=conntemp.execute("select * from RSDA_TABLE where rsda='"&temp_id&"'") % > < % 'put headings on the table of field names nobody="對不起!在我們的數據庫里沒有您要找的資料!"%> '判斷是否有這個人 < %if rstemp.eof then % > < font size="5" color=OrangeRed> < %Response.Write(nobody)% >< /font> < %else% > < div align="center"> < center> < table border="1" width="73%" height="399"> < tr> < td width="21%" height="49" align="center">< p align="center">姓 名< /td> < td width="30%" height="49" align="center"> < font size=4 color=OrangeRed>< /font>< /td> < /td> < tr> < p align="center">年 齡< /td> < td width="30%" height="47" align="center"> < font size=4 color=OrangeRed>< %=rstemp(0)% >< /font>< /td> < /tr> < tr> < td width="49%" height="146" rowspan="3" colspan="2"> < img src="jpg.asp">< /td> 'JPG.ASP就是我們將要建立的專門處理圖象的ASP文件 < /tr> < /table> < /center>< /div> rstemp.close set rstemp=nothing conntemp.close set conntemp=nothing % > < /BODY> < /HTML> *********************************** 第三步:建立處理圖象的ASP文件。(JPG.ASP) *********************************** < % Response.Expires = 0 Response.Buffer = TRUE Response.Clear ' Open database Set conntemp = Server.CreateObject("ADODB.Connection") conntemp.open "dsn=RSDA;uid=sa;pwd=SA" 'change http header Response.ContentType = "image/jpeg" ' or "IMAGE/GIF" ' Get picture TEMP_ID=session("RSDA_ID") Set Rs = conntemp.Execute("SELECT photo from RSDA_table where ID='"&TEMP_ID&"'") Response.BinaryWrite Rs("photo") Session.Abandon Response.End % > ********************************** 這里主要就是用到了一個小技巧就是利用了一個SESSION變量來實現兩次同條件查詢。 大家如我上述只需少量改動,就可以實現一個頁面既有文字又有圖象了!
asp常常用到的一些東西,
相關文章
asp連接SQL和Access數據代碼(asp里的隨機函數)
asp連接SQL和Access數據代碼,asp里的隨機函數,需要的朋友可以參考下2012-09-09循環(huán)取值Request.QueryString的用法
2008-01-01