




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于ASP實現Flash對數據庫的訪問年愛華(蘭州市文科職業學校,甘肅蘭州)(蘭州大學,甘肅蘭州)【摘要】Flash動畫在課件制作、網頁設計中ASP與Flash技術得到了廣泛的應用。ASP具有強大的數據庫處理功能,Flash能夠實現交互性矢量動畫,將FLASH與ASP相結合,實現FLASH與數據庫的連接和交互。其作品將具有一定的智能,功能和演示效果將會有質的飛躍。本文對Flash與數據庫連接的實現方法進行了初步的探討,介紹了Flash如何用LoadVars類與數據庫進行通信。【關鍵詞】Flash;ASP;數據庫; LoadVars1 引言FLASH是MacroMedia公司專為網絡應用設計的一
2、個交互性矢量動畫設計軟件。網站設計者可以使用FLASH為網站設計各種動態Logo動畫、導航條以及全屏動畫,還可以加入動感音樂,完全具備多媒體的各項功能。FLASH以其體積短小、流媒體播放的特點迅速打開市場,將WWW上的站點頁面設計帶上了一個全新的高度。ASP(Active Server Page)是Microsoft公司推出的一種基于服務器端的腳本編程語言,它很容易和數據庫連接。FLASH與ASP的組合使網頁功能更加強大,可以通過它們和數據庫連接,能使我們的網站或課件不僅具有強大的數據支持而且具有完美的交互界面。2 基本原理Flash不能直接查詢數據庫,但它能夠訪問ASP網頁,而ASP網頁能夠
3、查詢數據庫。為了實現Flash與數據庫的連接,需要把Flash和ASP聯系起來。Flash與數據庫的連接可看成是3層架構,Flash是應用層,ASP是連接層,數據庫是底層。Fl ash利用A S P與數據庫進行交互的原理如圖1所示:客戶端(應用層)服務器端(連接層)數據庫(底層)圖1 Flash應用程序與asp、數據庫的關系數據請求數據調用原始數據文本數據XML數據ASP腳本Flash應用程序數據庫3 LoadVars類介紹Flash提供的LoadVars類用于在Flash應用程序和服務器之間傳輸變量。可以使用LoadVars類在下載時獲取成功數據加載、進度指示和流數據的驗證信息。LoadVa
4、rs類的工作原理非常類似于X M L類。3.1 LoadVars類的主要方法LoadVars.load():從指定的URL下載變量。LoadVars.send():將變量從LoadVars對象發布到U R L。LoadVars.sendAndLoad():將變量從LoadVars對象發布到U R L,并將服務器的響應下載到目標對象。3.2 LoadVars類的主要屬性LoadVars.contentType:指示數據的MIME類型。LoadVars.loaded:指示load或sendAndLoad操作是否已完成的布爾值。3.3 LoadVars類的事件處理函數LoadVars.onData:
5、當數據從服務器上完全下載時,或當從服務器下載數據的過程中出現錯誤時調用。LoadVars.onLoad:當完成load或sendAndLoad操作時調用。 3.4 HTTP 協議的 GET 或 POST 方法的簡單區別FLASH用GET傳送數據,顯示數據名和值,在asp中接收flash值的函數是Request.QueryString("變量名");FLASH用POST傳送數據不顯示數據名和值,在asp中接收flash值的函數是Request("變量名")。4 Flash與數據庫連接的應用現用一個簡單的學生信息查詢和錄入系統來舉例說明Flash和數據庫連接
6、技術應用于網絡課件制作的具體方法。本實例中所建立的數據庫文件、ASP文件和Flash動畫文件應放在同一個文件夾。在程序的設計中將LoadVars對象簡稱為LV。4.1 數據庫的設計本數據庫以Microsoft Access為例,在實際應用中如果是SQL Server或其他數據庫,雖然連接數據庫的方法稍有不同,但處理方法相同。建立一個數據庫,取庫名叫student.mdb。在庫中創建表stud。stud設計如表1:字段名稱數據類型字段寬度ID自動編號默認值學號文本8姓名文本6性別文本2地址文本50出生日期文本10表1 stud表的表結構4.2 編寫ASP文件 與數據庫的鏈接文件conn.inc,
7、用記事本直接編輯保存后改擴展名。<%/建立一個數據庫的鏈接對象conn=Server.CreateObject("ADODB.Connection");/用已經建立的數據庫鏈接對象打開數據庫var connstr="driver=Microsoft Access Driver (*.mdb);dbq="+Server.MapPath("student.mdb");conn.Open(connstr);%> 根據flash輸入的數據進行查詢數據并將查詢結果顯示在flash中,查詢文件為chaxun.asp。<%lang
8、uage="javascript"%><!-#include file="conn.inc"-><%/讀FLASH傳遞過來的數據var name=Request("input_flash1")/創建查詢數據庫的SQL語句var sql="SELECT * FROM stud where 姓名='"+name+"'"/創建一個“記錄集”,它的任務是存儲從數據庫里提取出來的的數據,并執行數據庫查詢rs=conn.execute(sql)if(!rs.EOF)
9、/獲取數據庫中的字段內容 var xuehao=rs("學號") var xingming=rs("姓名") var xingbie=rs("性別") var dizhi=rs("地址") var csrq=(rs("出生日期") else xingming="查無此人"/將查詢出來的內容輸出flash中去,必須以&分隔Response.Write("&xh_asp="+xuehao)Response.Write("&xm
10、_asp="+xingming)Response.Write("&xb_asp="+xingbie)Response.Write("&dz_asp="+dizhi)Response.Write("&csrq_asp="+csrq)/關閉記錄集對象rs.Close()/關閉連接對象conn.Close()%> 把flash錄入界面的數據保存到數據庫中,如果你的系統WinXP磁盤格式是NTFS, 點擊“工具”->“文件夾選項”->“查看”,找到“使用簡單文件共享(推薦)”這項,把前面的勾
11、去掉。選擇數據庫文件右鍵->屬性->“安全”的選項卡,添加一個用戶“INSR_計算機名”,在組或用戶名中會出現Internet來賓賬戶,權限設為“完全控制”,這樣數據保存到數據庫時就不會出錯了;如果為了簡單起見,可以添加Everyone用戶,其插入數據文件名為insert.asp。<%language="javascript"%><!-#include file="conn.inc"-><%/讀FLASH傳遞過來的數據var xh=Request("lr1")var xm=Request(&q
12、uot;lr2")var xb=Request("lr3")var csrq=Request("lr4")var dz=Request("lr5")/創建插入數據庫數據的SQL語句var sql1="insert into stud (學號,姓名,性別,地址,出生日期) values ('"+xh+"','"+xm+"','"+xb+"','"+dz+"','&qu
13、ot;+csrq+"')"/注意:上面的這個sql語句在程序中一行書寫conn.execute(sql1)/將結果返回到flash中,必須以&分隔Response.Write("&fanhui=數據插入成功!")/關閉連接對象conn.Close()%>4.3 Flash的設計 新建一個Flash文檔,任意命名,在第一幀制作學生信息查詢主界面,設置一個輸入文本并設置實例名稱為input1,和三個按鈕如圖2:圖2 學生信息查詢主界面在第一幀輸入如下代碼:System.useCodepage = true;/防止從ASP加載的數
14、據出現亂碼var myload = new LoadVars();var luru = new LoadVars();/創建加載外部變量的對象,它可以用來發送、接收、裝載、處理數據stop();“提交”按鈕代碼如下:on (release) myload.input_flash1= input1.text;/將LV對象中儲存的所有變量都傳遞給ASP,不過這里只設定了一個,就是“input_flash1”/向ASP傳遞成功后,我們再把從ASP傳遞回來的變量還儲存在“myload”對象中myload.sendAndLoad("chaxun.asp?bianliang="+ran
15、dom(9999), myload, "post");/對加載成功的處理myload.onLoad = function(success) if (success) /把asp中查詢數據庫的結果返回并顯示到flash中xh.text = myload.xh_asp;xm.text = myload.xm_asp;xb.text = myload.xb_asp;dz.text = myload.dz_asp;csrq.text = myload.csrq_asp;gotoAndPlay(2);/跳轉到第三幀查詢結果界面“重置”按鈕代碼如下:on (release) input
16、1.text="" ; “錄入”按鈕代碼如下:on (release) gotoAndStop(3);/跳轉到第三幀數據錄入主界面 在第二幀制作查詢結果界面,設置5個動態文本并依次設置實例名稱為xh,xm,xb,csrq,dz和一個返回按鈕,如圖3:圖3 查詢結果界面“返回”按鈕代碼如下:on (release) gotoAndStop(1);/查詢結束后返回到查詢主界面可以繼續查詢 在第三幀制作數據錄入主界面,設置5個輸入文本并依次設置實例名稱為inputlr1,inputlr2,inputlr3,inputlr4,inputlr5和兩個按鈕,如圖4:圖4 數據錄入主界面
17、為突出講解flash與數據庫的數據的交互,在這里并沒有對錄入數據進行合法檢查,在錄入合法數據的前提下,“提交”按鈕的代碼如下:on (release) luru.lr1= inputlr1.text;luru.lr2= inputlr2.text;luru.lr3= inputlr3.text;luru.lr4= inputlr4.text;luru.lr5= inputlr5.text;/將LV對象中儲存的所有變量都傳遞給ASP,在這里傳遞5個值/向ASP傳遞成功后,我們再把從ASP傳遞回來的變量還儲存在“luru”對象中luru.sendAndLoad("insert.asp?b
18、ianliang="+random(9999), luru, "post");/對加載成功的處理luru.onLoad = function(success) if (success) insert1.text=luru.fanhui; /asp執行插入數據成功后,返回信息到flash中gotoAndStop(4); /數據錄入返回信息界面“返回”按鈕代碼如下:on (release) gotoAndStop(1);/返回到第一幀 在第四幀制作數據錄入信息返回界面,設置一個動態文本并設置實例名稱為insert1和一個返回按鈕,如圖5:圖5 數據錄入信息返回界面“返
19、回”按鈕代碼如下: on (release) gotoAndStop(1); 保存flash源文件,發布設置版本為Flash Player 8,ActionScript版本ActionScript2.0,發布生成swf文件和html文件。4.4 配置 IISIIS (Internet Information Services, Internet 信息服務 ):基于 Windows 服務器的服務,可幫助在任何 Intranet 或 Internet 上發布信息,。虛擬目錄是由 Web 服務器使用的邏輯目錄名,與服務器上的物理目錄相對應,在IIS中對準“默認網站”單擊鼠標右鍵,在快捷菜單中選擇【新
20、建】【虛擬目錄】命令/添加別名,并選擇已建立的文件夾。4.5 測試打開“Internet信息服務”,選擇虛擬目錄下flash發布生成的swf文件或html文件,右鍵/瀏覽就可以實現本機在網絡環境的測試。5 結束語本文介紹了如何通過ASP程序、Flash、Access數據庫實現根據用戶的要求讀取數據并發布。通過ASP實現了Flash與SQL數據庫的無縫連結,并以網頁的形式進行發布,可以方便具有訪問權限的網內用戶在線瀏覽。并在Windows XP+Flash 8+IIS5.0下調試成功, 正如在這篇文章中所探索的,集成Flash和asp應用軟件是完全有可能的,其關鍵是如何在Asp和Flash及數據庫之間建立數據通訊機制,如何連接這兩部分并在戰略上進行正確的架構策劃。【作者簡介】年愛華,1979年,甘肅,男,蘭州市文科職業學校中級教師,蘭州大學信息技術與工程學院在讀碩士研究方向:計算機技術。通訊地址:甘肅省蘭州市七里河區小西湖東街1號,郵編:730050 【參考文獻】1劉明偉,黃興.Flash與后臺北京:清華大學出版社, 2007.2.2張大地.完全征服Flash動畫設計北京: 人民郵電出版社, 2007.5.3蔡朝暉.Flash ActionScript互動編程技術與實例M.北京:人民郵電出版社,2007.4徐緒堪.Flash8動畫制作與Act
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數字貨幣在跨境支付領域的應用與發展趨勢深度報告
- 2025年模具制造數字化設計仿真技術優化與創新報告
- 基層醫療衛生機構信息化建設與醫療服務均等化報告
- 2025年老舊小區改造市場政策環境與法規分析報告
- 2025年學前教育信息化與幼兒安全教育融合模式探索報告
- 2025年CCS技術在能源行業應用的財務風險與對策分析報告
- 教育游戲化在小學美術色彩搭配教學中的實踐與效果報告
- 2025年食品添加劑安全性評估與食品安全教育報告
- 商業銀行金融科技人才培養中的創新思維與技能培養策略報告
- 2025年機械制造企業服務化轉型中的服務創新與木材加工技術報告
- 撤銷限高和失信申請書
- DB33-T 2383-2021 《公路工程強力攪拌就地固化設計與施工技術規范》
- 車床工安全生產職責規章制度
- 2025年慶六一兒童節校長致辭(2篇)
- 房屋市政工程生產安全重大事故隱患排查表(2024版)
- 人教版小學數學五年級下冊全冊導學案
- 油庫設備維護規范
- 國企求職指南培訓
- 職業道德與法治綜合練習2024-2025學年中職高教版
- 安委會辦公室主要職責
- 項目合作分潤合同范例
評論
0/150
提交評論