ASP網(wǎng)絡編程從入門到精通 (15).ppt_第1頁
ASP網(wǎng)絡編程從入門到精通 (15).ppt_第2頁
ASP網(wǎng)絡編程從入門到精通 (15).ppt_第3頁
ASP網(wǎng)絡編程從入門到精通 (15).ppt_第4頁
ASP網(wǎng)絡編程從入門到精通 (15).ppt_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、第15章 網(wǎng)絡投票,網(wǎng)絡投票現(xiàn)在在網(wǎng)上非常普遍。新聞網(wǎng)站投票評選用戶最感興趣的新聞;音樂網(wǎng)站根據(jù)用戶投票排出歌曲排行榜;娛樂網(wǎng)站投票評選最佳影視?,F(xiàn)在在國外,如美國,總統(tǒng)大選就是通過網(wǎng)絡投票選出的。 網(wǎng)絡投票具有很多好處。一是方便,用戶足不出戶,就可以投出自己的一票。二是分析統(tǒng)計迅速,統(tǒng)計者可以通過數(shù)據(jù)庫,讓計算機很快的得出想要的結(jié)果。 網(wǎng)絡投票雖然具有很多優(yōu)點。但是它也存在著缺陷,就是網(wǎng)絡安全問題和網(wǎng)絡阻塞問題,如果能完全解決這兩個問題,網(wǎng)絡投票的應用范圍將更加廣泛。,15.1 系統(tǒng)簡介,網(wǎng)絡投票系統(tǒng)有簡單和復雜兩種。簡單的網(wǎng)絡投票系統(tǒng)在投票期間網(wǎng)頁上顯示的投票內(nèi)容固定不變。復雜的投票系統(tǒng)會

2、隨著時間、用戶的不同等顯示不同的投票項。例如大家比較熟悉的每周一次的歌曲排行榜,每周的投票內(nèi)容都不同。在這種情況下,如果每次改動都要靠網(wǎng)站管理員在網(wǎng)頁上修改這是不可能的。在這一章,將具體講述如何實現(xiàn)網(wǎng)絡投票系統(tǒng)。首先來看一下在網(wǎng)絡投票系統(tǒng)中幾個關鍵技術的實現(xiàn)。,15.2 關鍵技術的實現(xiàn),一個網(wǎng)絡投票系統(tǒng)涉及到的關鍵技術包括如何獲取用戶的投票以及如何禁止用戶重復投票。在這一節(jié),將著重介紹這兩方面內(nèi)容的實現(xiàn)。,15.2.1 所投選項的獲取,在一個網(wǎng)絡投票系統(tǒng)中,準確獲取用戶所投選項是非常重要的。 1單選模式下的獲取 2多選模式下的獲取,15.2.2 禁止重復投票,某些網(wǎng)絡投票系統(tǒng)具有禁止重復投票的

3、功能是非常有意義的。禁止重復投票能夠比較準確的獲得用戶反饋的信息。在ASP中,有幾種方法在一定程度上可以防止重復投票。本文提供幾種方法的共同原理是:設置一個邏輯變量IsVoted,在投票之前驗證IsVoted的值,只有值為False時,才能投票,否則就認為已投過票。 1用Session變量來跟蹤是否已投票 2用Cookies來跟蹤是否已投票 3驗證IP地址與登錄時間 4用戶登錄限制,15.3 一個簡單投票計數(shù)器的實現(xiàn),一個簡單的投票計數(shù)器要完成的功能是在網(wǎng)站投票期間能夠統(tǒng)計所有用戶的投票。下面將使用Application對象來完成該計數(shù)器的實現(xiàn)。Application對象是處理某一特定ASP應

4、用中所有用戶共享信息的對象,也就是說Application對象是所有聯(lián)網(wǎng)機器上所有網(wǎng)頁所共享的對象。由Application對象所定義和設置的變量,所有用戶的所有網(wǎng)頁均可訪問。利用Application對象可以定義變量以及改變變量的值,其語法格式如下: Application(變量名)=表達式 (具體內(nèi)容請參照本書),15.3.1 投票模塊,投票模塊的實現(xiàn)腳本是index.asp,其中包含表單formresearch,用于用戶投票。index.asp 文件的設計界面如圖15-5所示。(具體內(nèi)容請參照本書),15.3.2 計數(shù)模塊,在vote.asp中,程序?qū)⑹紫扰袛嘤脩粼谕镀蹦K單擊的是【投票

5、】按鈕還是【查看結(jié)果】按鈕。如果是【投票】按鈕,則將用戶所投選項票數(shù)加1,并顯示投票成功。如果是【查看結(jié)果】按鈕,則將轉(zhuǎn)到結(jié)果顯示界面。具體代碼如下:(具體內(nèi)容請參照本書),15.3.3 顯示模塊,顯示模塊的實現(xiàn)腳本是view.asp,當用戶想查看當前的投票結(jié)果,可以單擊投票界面的【查看結(jié)果】按鈕,view.asp將進行相應的處理,把當前的投票結(jié)果顯示給用戶。顯示模塊的設計界面如圖15-6所示。(具體內(nèi)容請參照本書),15.4 一個功能完善的投票系統(tǒng)的實現(xiàn),在這一節(jié),將實現(xiàn)一個功能比較完善的投票系統(tǒng)。該系統(tǒng)不僅能夠投票,而且能夠?qū)崿F(xiàn)對投票各種相關數(shù)據(jù)的管理。,15.4.1 系統(tǒng)介紹,該系統(tǒng)要完

6、成的功能如下:(具體內(nèi)容請參照本書),15.4.2 數(shù)據(jù)庫設計,從15.4.1節(jié)系統(tǒng)模塊結(jié)構(gòu)可以看出,在該系統(tǒng)中,要用到五個數(shù)據(jù)表:Question數(shù)據(jù)表、Title數(shù)據(jù)表、Subject數(shù)據(jù)表、Admin數(shù)據(jù)表和IP數(shù)據(jù)表。(具體內(nèi)容請參照本書),15.4.3 系統(tǒng)文件構(gòu)成,在該系統(tǒng)中,用戶投票模塊包括三個文件:index.asp,vote.asp和view.asp。index.asp文件顯示投票界面,vote.asp文件處理用戶投票,view.asp文件顯示投票結(jié)果。管理員管理模塊包括如下幾個文件:(具體內(nèi)容請參照本書),15.4.4 用戶投票模塊,當用戶登錄網(wǎng)站時,首先看到的是一個投票界

7、面,該界面包括各個投票選項以便讓用戶進行投票。本文中投票界面的生成是由index.asp文件完成的。在index.asp文件中,首先從數(shù)據(jù)庫中查找當前投票主題。代碼如下:(具體內(nèi)容請參照本書),15.4.5 投票統(tǒng)計模塊,當用戶在投票顯示模塊做了選擇,并單擊【投票】按鈕后,將轉(zhuǎn)到投票統(tǒng)計模塊vote.asp中進行相應的投票處理。代碼如下:(具體內(nèi)容請參照本書),15.4.6 結(jié)果顯示模塊,當用戶想查看當前的投票結(jié)果時,可以單擊投票界面上的【查看結(jié)果】按鈕,結(jié)果顯示文件view.asp會顯示當前投票主題下各個投票項的投票結(jié)果。每個投票項的投票結(jié)果包括該投票項的票數(shù)、以數(shù)字和圖形方式顯示的該投票項

8、所占總票數(shù)的百分數(shù)。投票項的票數(shù)顯示比較簡單,直接顯示從數(shù)據(jù)庫中讀取的該項的數(shù)字即可。(具體內(nèi)容請參照本書),15.4.7 管理員登錄模塊,管理員登錄之后才能管理投票信息,所以在介紹管理員操作的其他模塊之前首先介紹管理員登錄模塊login.asp。login.asp文件的設計界面如圖15-12所示,其中包含表單form1,用于輸入管理員的用戶名、密碼和驗證碼。(具體內(nèi)容請參照本書),15.4.8 設置當前投票模塊,當管理員登錄成功后,會轉(zhuǎn)到投票管理界面。在該界面,管理員可以進行以下操作:設置當前投票主題、添加投票主題、修改投票主題、刪除投票主題和密碼修改。其中,設置當前投票主題是管理員登錄時默

9、認顯示的界面。 設置當前投票主題就是要求管理員選擇一個投票主題,單擊【確定】按鈕后,數(shù)據(jù)庫中Subject表中該主題的process列的值設為True。在程序中,設置當前投票主題的代碼分為兩部分:界面顯示部分在admin.asp文件中,由定義的SetCurrent()過程實現(xiàn);數(shù)據(jù)庫處理部分在do.asp文件中實現(xiàn)。具體的代碼如下:(具體內(nèi)容請參照本書),15.4.9 增加投票模塊,在該模塊,管理員能夠增加投票主題及其投票標題和投票項。下面詳細講解這三者是如何添加的。 1添加投票主題 2添加投票標題 3增加投票項,15.4.10 修改投票模塊,在該模塊,管理員能夠修改投票主題及其投票標題和投票

10、項。下面將主要講解修改投票主題的實現(xiàn),修改投票標題和投票項在原理上跟修改投票主題是一樣的,只是一些細節(jié)會有不同。當管理員在admin.asp中單擊【修改投票主題】超級鏈接,將打開修改投票主題界面。在該界面上,數(shù)據(jù)庫中所有的投票主題將顯示在一個表格中。管理員單擊要修改的主題對應的【修改】操作,將在表格下方顯示一個主題輸入框和一個【修改】按鈕。管理員將修改后的主題輸入并單擊【修改】按鈕后,程序?qū)研薷暮蟮闹黝}存入數(shù)據(jù)庫中。在該程序中,修改投票主題的代碼分為兩部分:界面顯示部分在admin.asp文件中,由定義的Modify() 過程實現(xiàn);數(shù)據(jù)庫修改部分在do.asp文件中實現(xiàn)。具體代碼如下:(具體

11、內(nèi)容請參照本書),15.4.11 刪除投票模塊,管理員登錄之后,在admin.asp中單擊【刪除投票主題】超級鏈接,將打開刪除投票主題界面,刪除指定的投票主題及其相應的投票標題和投票項。 如果管理員只想刪除某一主題下的某個投票標題或投票項,可以在刪除投票主題界面中單擊該投票主題,則進入刪除投票標題界面,在此界面單擊投票標題,就會進入刪除投票項界面。管理員可以根據(jù)此順序,找到要刪除的項,直接刪除。該模塊具體的代碼實現(xiàn)分為三部分:刪除投票主題、刪除投票標題和刪除投票項。在這里編者將主要講述刪除投票主題部分。(具體內(nèi)容請參照本書),15.4.12 信息修改模塊,管理員在admin.asp中,單擊【信息修改】超級鏈接,將打開信息修改界面,管理員可以輸入新的用戶名、新

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論