




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于ASP的WEB動態(tài)交互訪問摘 要使用ASP提供的Application和Session兩個對象,可以實現(xiàn)網站間的動態(tài)交互訪問,也可以作為聊天室。Application是Web站點所有用戶可共享的全局對象,其屬性在Global.asa 文件中定義。在此用于存儲用戶的動態(tài)交互信息。Session對象是在頁面間跳轉時保存和傳遞數據,其屬性在應用程序中定義。用于記憶交互訪問的用戶信息。關鍵詞ASP Application對象 Session對象 VBScript腳本 JavaScript HTML標簽 服務器 瀏覽器 IIS AccessAbstractTwo objects, applicati
2、on and session, provided from ASP, can be used to construct chat room in your Web . Application is a global object shared by all clients on web, and its at tribute is defined in Global.asa file, here is used to save the chat ted contents of user . Session object is used to save and transmit data w h
3、en web jumps, but its active range is only for one client, and its at tribute is defined in application program. Here, Session object is used to remember name of user .Key wordsASP Application object Session object VBScript JavaScript HTML tag server browser IIS A1. 前言隨著網絡技術的發(fā)展,web技術有了廣闊的發(fā)展空間,其中動態(tài)訪問
4、技術更是用戶的需求,為此本文用ASP來實現(xiàn)動態(tài)訪問的開發(fā),所做的主要工作如下:(1)介紹了動態(tài)訪問頁面功能及Windows XP Professional+ IIS+ Microsoft Office Access 2003系統(tǒng)的ASP服務器搭建。(2)闡述整個動態(tài)訪問系統(tǒng)的結構及工作原理;分析了系統(tǒng)實現(xiàn)中的特殊性、難點和重點。(3)分析并解決動態(tài)訪問實現(xiàn)中的若干技術問題。 (4)完成動態(tài)訪問系統(tǒng)的全部設計,并進行測試及分析結果。 1.1本課題研究的意義 隨著新的技術的發(fā)展,通過這些新技術的應用,動態(tài)訪問的開發(fā),給人們帶來新的交流方式,也擴展了人們更大的交流空間。在動態(tài)訪問的平臺上,不僅可以跨
5、地域、跨國家進行交流,還可以在一個狹小的地理范圍(如:一個公司內部)進行交流,使人們的交流暢通無阻,能得到很多問題的迅速解答,不僅提高了工作效率,還使工作更有情趣,讓人們的工作和新的信息的獲得輕松自如。所以,研究動態(tài)訪問的開發(fā),具有非常重大的意義。 1.2本課題的研究目標針對動態(tài)訪問的眾多好處,根據使用動態(tài)訪問的用戶的眾多需求,分析并開發(fā)出一套可行的動態(tài)訪問系統(tǒng),去研究、發(fā)現(xiàn)動態(tài)訪問涉及的關鍵技術和實現(xiàn)的關鍵問題,進一步提高動態(tài)訪問的技術性能。 1.3要解決的關鍵問題動態(tài)訪問最關鍵的是交互信息的實時更新,用戶的注冊及登錄,在線用戶的列表,數據庫的鏈接及訪問,ASP實現(xiàn)的WEB動態(tài)交互訪問等。如
6、果不能很好的解決這些問題,動態(tài)訪問的質量就會大打折扣,甚至會使動態(tài)訪問無法進行。2.需求分析 2.1功能需求為用戶提供動態(tài)交換信息場所,用戶可以根據個人習慣選擇字體、文字顏色和表情等;可以手動清除動態(tài)交換信息的內容??蛻舳颂幚砟K:獲取界面元素、得到動態(tài)交換信息內容、與服務器交互、更新客戶端頁面、響應用戶事件。服務器端響應模塊:提供動態(tài)訪問界面元素信息、獲得提交數據、數據合法性驗證、動態(tài)交換信息內容入庫。動態(tài)訪問系統(tǒng)通過界面及用戶管理、客戶端JavaScript處理和服務器端響應 ,三個主要功能模塊實現(xiàn)了動態(tài)訪問中游客登錄、注冊用戶登錄、注銷、發(fā)送消息、讀取消息和查看在線用戶列表等功能。能夠注
7、冊用戶,管理用戶信息,動態(tài)交換信息者把語句寫入文本,輸出到屏幕上, 瀏覽器不斷的對屏幕輸出進行刷新、讀取,實時更新在線的客戶。 2.2性能需求在動態(tài)訪問者沒有滿員的情況下,普通用戶能夠登錄的動態(tài)訪問進行文本的動態(tài)交換信息,能夠方便的實現(xiàn)公共交談、選擇顏色、添加表情等,新用戶注冊時能夠保證用戶昵稱的唯一性。網絡管理員能夠方便的瀏覽所有用戶的信息等等??紤]到需要驗證的內容,在程序中使用Application(“usercount”)來標記當前的用戶數。在登錄時用Session"upower"來判斷用戶的權限,如果是普通用戶或游客通過驗證后會進入動態(tài)訪問主頁,如果是管理員則會進入
8、管理員管理管理頁面。3.總體考慮 根據設計需求,交互訪問的應用程序工作流程如下:圖一 (程序工作流程圖) 3.1系統(tǒng)模塊的設計動態(tài)訪問的各功能模塊 index.htm:登錄界面 reg.asp、reg.htm:用戶注冊 login.asp:用戶登錄界面 Global.asa: 應用程序文件 chatroom.asp:進入動態(tài)訪問主界面、進行動態(tài)交換信息 iamcoming.asp:用戶上線提示 conn.asp:數據庫連接文件 homechatroom.mdb:動態(tài)訪問數據庫文件 showOnline.asp:顯示當前在線用戶 about.html:動態(tài)訪問說明文件 process.asp:動
9、態(tài)訪問信息界面注冊模塊:初次來動態(tài)訪問的用戶,進行注冊,保留自己信息,便于以后繼續(xù)使用本動態(tài)訪問時,能夠迅速登錄。登錄模塊:游客或已經注冊的用戶進行登錄,進入系統(tǒng)開始動態(tài)交換信息交流。動態(tài)交換信息模塊:游客或注冊用戶登錄到動態(tài)訪問系統(tǒng)以后,就可以和所有的在線用戶,進行動態(tài)交換信息交流,除了使用各種顏色字體的文字動態(tài)交換信息,還可以使用已提供的圖片。退出模塊:退出動態(tài)交換信息系統(tǒng),與數據庫斷開連接,并從在線人數減除。 3.2數據庫結構設計Microsoft Office Access 2003提供了非常方便的創(chuàng)建新數據庫的方法。管理數據庫和建立數據庫對象采用Access。在數據庫中用User表,
10、這個表包括了所有注冊用戶的信息,如:用戶名、密碼、昵稱、性別等等。下面為數據庫表Users(表1)表1 (Users表結構)字段名稱數據類型字段大小說明Username文本50用戶者名稱Userpassword文本50用戶者密碼Nickname文本50用戶者昵稱Sex文本10用戶者性別4.系統(tǒng)的實現(xiàn) 4.1 INDEX.HTM 、LOGIN.ASP、INDEX.JSIndex.htm是進入動態(tài)訪問的主接口,在界面上有進入動態(tài)訪問、注冊等選擇按鈕,當用戶做出選擇時,此頁面自動加載login.asp或reg.htm、reg.asp,完成操作。Index.js功能是協(xié)同login.asp,在用戶登錄
11、時,將用戶輸入的信息與數據庫中信息進行匹對的。Index.js關鍵代碼如下:if(flag!=null) setMsg("請輸入用戶名和密碼(只能是字母,數字和下劃線"_"的組合)");else setMsg("<font color="#009900">正在登陸,請等待.</font>");var values = "act=login&username=" + username + "&password=" + password;h
12、omeSendPost("login.asp", values, processLoginRequest);function processLoginRequest() if(homeHttpRequest.readyState=4) if(homeHttpRequest.status=200) if(homeHttpRequest.responseText="True") window.location = "chatroom.asp"else setMsg("用戶名或密碼錯誤,請重試。");4.2 REG.HT
13、M、 REG.ASP、REG.JS此三個文件是用戶注冊時使用的,關鍵代碼如下:dim sqlStr, rssqlStr = "select * from acrUsers where acrUsername='" & username & "' or acrNickname='" & nickName & "'"set rs = server.CreateObject("ADODB.RecordSet")rs.open sqlStr,conn,1,3i
14、f rs.eof thenrs.addnewrs(0) = usernamers(1) = passwordnickName = replace(nickName,"&","&")nickName = replace(nickName,"<","<")nickName = replace(nickName,">",">")nickName = replace(nickName,chr(34),"&
15、;quot;")nickName = replace(nickName," "," ")rs(2) = nickNamers(3) = sexrs.updateresult = "注冊成功,請登錄。"elseif rs(0)=username thenresult = "對不起,用戶名已存在。"end ifif rs(2)=nickName thenresult = result & "昵稱已存在。"end if4.3 CONN.ASP我們要訪問數據庫,首先
16、要必須知道這個數據庫在哪里,這個數據庫的驅動程序是什么,在這里使用 ASP 來指定數據庫路徑及數據庫驅動程序。不必手動去創(chuàng)建數據庫源。server.mappath("db.mdb")指定數據庫路徑,DRIVER=Microsoft Access Driver (*.mdb);指定數據庫驅動程序,這里使用ACCESS建立homechatroom.mdb數據庫,其代碼如下:<%dim conn, DBpathDBpath = "homechatroom.mdb"set conn = Server.CreateObject("ADODB.Con
17、nection")conn.Connectionstring = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(DBpath)conn.open%>4.4 GLOBAL.ASA Global.asa文件其實是一個可選文件,程序編寫者可以在該文件中指定事件腳本,并聲明具有會話和應用程序作用域的對象。該文件的內容不是用來給用戶顯示的,而是用來存儲事件信息和由應用程序全局使用的對象。該文件的名稱必須是Global.asa且必須存放在應用程序的根目錄中。每個應用程序只能有一個
18、 Global.asa 文件。4.5 CHATROOM.ASP、CHATROOM.JS動態(tài)交換信息的主界面,如何將用戶的動態(tài)交換信息信息顯示在客戶的瀏覽器中,可以用ASP的Application對象。應用Request.Form方法獲取從輸入動態(tài)交換信息內容頁面?zhèn)鬟f的動態(tài)交換信息信息,首先利用Server.HTMLEncode方法對獲取到的發(fā)言內容進行處理,再對其進行指定的格式設置,最后將其以字符串的形式保存到Application(“Message”)中。function send() var msg=escape(document.getElementById("msg"
19、;).value); /escape解決home中文籌碼問題if(msg="") setSuggest("請輸入內容");else var color = document.getElementById("selectColor").value;var values = "msg=" + msg + "&color=" + color;homeSendPost("process.asp", values, processSendRequest);document.ge
20、tElementById("msg").value = ""document.getElementById("msg").focus();function processSendRequest() if(homeHttpRequest.readyState=4) if(homeHttpRequest.status=200) if(homeHttpRequest.responseText!="") var chatContent = document.getElementById("chat_content
21、");var msgDiv = document.createElement("div");msgDiv.innerHTML = homeHttpRequest.responseText;chatContent.appendChild(msgDiv);sound = true;else setSuggest("您請求的頁面有異常");/alert("您請求的頁面有異常");function getAllMsg() setSuggest(" ");homeSendPost("pr
22、ocess.asp","",processSendRequest);if(sound) setSuggest("<embed type="application/x-mplayer2" src="sound/message.wav" autostart="true" loop="false" height=0 width=0 /> ");sound=false;4.6 ABOUT.HTML動態(tài)訪問的說明文檔和版權信息。5.網站測試與性能分析本動態(tài)訪問經測試,完全可以正確實現(xiàn)動態(tài)交互訪問的功能,具體測試,如下圖所示(以交
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 在線旅游行業(yè)發(fā)展趨勢與市場機遇分析
- 二年級下冊語文知識:關聯(lián)詞(造句)、詞語積累
- 長春早期教育職業(yè)學院《安全評價》2023-2024學年第一學期期末試卷
- 情感化虛擬試穿-洞察及研究
- 黑龍江幼兒師范高等專科學?!肚脚c作品分析一》2023-2024學年第一學期期末試卷
- 紹興文理學院《大學生職業(yè)發(fā)展與就業(yè)指導1》2023-2024學年第一學期期末試卷
- 銅仁幼兒師范高等專科學?!夺t(yī)學儀器與系統(tǒng)設計》2023-2024學年第一學期期末試卷
- 2025年制造業(yè)數字化協(xié)同管理在電子信息產業(yè)的策略分析報告
- 2025年制造業(yè)綠色供應鏈綠色采購策略研究報告
- 蒸汽消毒成本效益-洞察及研究
- T/CSPSTC 112-2023氫氣管道工程施工技術規(guī)范
- 微弱的光亮(2024年山東煙臺中考語文試卷記敘文閱讀試題)
- 24春國家開放大學《農業(yè)推廣》調查報告參考答案
- 機械原理課程設計-沖壓機構及送料機構設計說明書
- [甘肅]最新甘肅省造價文件匯編(310頁)
- 鋼框架結構計算書畢業(yè)設計
- 品牌中國產業(yè)聯(lián)盟簡介ppt課件
- 肝素鈉生產工藝綜述
- 壓力管道氬電聯(lián)焊作業(yè)指導書
- 屋面防水質量控制培訓課件(共63頁).ppt
- DISCO240控制臺
評論
0/150
提交評論