在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究

在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究

ID:9498796

大?。?3.00 KB

頁數(shù):3頁

時(shí)間:2018-05-01

在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究_第1頁
在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究_第2頁
在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究_第3頁
資源描述:

《在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、在線投票網(wǎng)站系統(tǒng)設(shè)計(jì)研究  1.在線投票系統(tǒng)設(shè)計(jì)  在線投票系統(tǒng)應(yīng)用較普遍,難點(diǎn)在于怎樣避免重復(fù)投票和按照要求在指定日期及指定范圍內(nèi)進(jìn)行投票的方法。以asp和asp.平臺(tái)為例,在常見的設(shè)計(jì)中,有一些應(yīng)用Request對(duì)象的Cookies集合實(shí)現(xiàn)投票,可以限制多次投票;也有一些應(yīng)用Request對(duì)象的ServeVariabrles集合獲取IP地址,通過查詢IP地址的方法實(shí)現(xiàn)一個(gè)IP在指定日期內(nèi)進(jìn)行投票的方法?! ”救嗽谥谱髌髽I(yè)內(nèi)部X站的評(píng)選月度優(yōu)秀員工在線投票模塊設(shè)計(jì)中,要求員工根據(jù)每月確定的候選人在線進(jìn)行差額投票評(píng)選優(yōu)秀員工,每月至多投票一次,且不能重復(fù)給同一人投票。上述

2、利用Request對(duì)象的方法不能滿足設(shè)計(jì)要求,本人在MicrosoftVisualStudio2010平臺(tái)下使用數(shù)據(jù)庫和vc#等組件編程完成了設(shè)計(jì),X站及評(píng)選優(yōu)秀員工的模塊工作狀況良好。下面將介紹本模塊的設(shè)計(jì)和制作方法?! ?.1相關(guān)數(shù)據(jù)表  本系統(tǒng)數(shù)據(jù)庫名稱為db_OA.mdf,事務(wù)日志文件是db_OA_log.ldf。與評(píng)優(yōu)投票程序設(shè)計(jì)相關(guān)的數(shù)據(jù)表有系統(tǒng)用戶表sysUser和評(píng)優(yōu)表yx,具體內(nèi)容如下:  1.1.1系統(tǒng)用戶表sysUser用于儲(chǔ)存具有登錄權(quán)用戶的信息及每月評(píng)優(yōu)投票日期。表結(jié)構(gòu)定義如表1-1所示?!   ?.1.2評(píng)優(yōu)表yx用于儲(chǔ)存月評(píng)優(yōu)秀員工侯選人信息

3、。表結(jié)構(gòu)定義如表1-2所示?! ?.2連接數(shù)據(jù)庫  本X站將數(shù)據(jù)庫保存在X站的App_Data文件夾中。其路徑存儲(chǔ)在配置文件DF,登錄用戶和密碼使用系統(tǒng)默認(rèn)值,使用系統(tǒng)的System.Data.SqlClient命名空間。此時(shí),數(shù)據(jù)庫路徑在X站已經(jīng)確定?! ?.3三層架構(gòu)與公共類文件  X站采用三層開發(fā)架構(gòu)。將X站需經(jīng)常使用的代碼段定義為方法,保存在公共類文件BaseClass.cs文件中,文件存放在系統(tǒng)文件夾App_Code中。BaseClass.cs文件中定義了三個(gè)方法,前一個(gè)方法是調(diào)用JavaScript的alert方法彈出and對(duì)象采用ExecuteScalar方

4、法,執(zhí)行單一結(jié)果的查詢。返回結(jié)果中第一行的第一列,將該列值轉(zhuǎn)換為一個(gè)int類型的值,用以判斷操作是否成功?! ?region執(zhí)行SQL語句,select讀取單一查詢結(jié)果,操作成功返回>0  1.3.3GetDataSet方法:  定義一個(gè)全局系統(tǒng)數(shù)據(jù)集類型(System.Data.DataSet)的方法GetDataSet,調(diào)用時(shí)有兩個(gè)字符串類型實(shí)參,一個(gè)是sQueryString,為輸入的SQL語句;另一個(gè)是TableName,為輸入的數(shù)據(jù)表名稱。返回值為數(shù)據(jù)集類型,即返回一個(gè)表。  #region:帶二個(gè)參數(shù)執(zhí)行SQL語句,操作成功返回一個(gè)表  語句使用nean

5、d事件,將執(zhí)行后臺(tái)設(shè)置的按鈕點(diǎn)擊事件代碼?!  ?.2后臺(tái)代碼編制  2.2.1啟動(dòng)評(píng)優(yōu)投票頁面時(shí),系統(tǒng)打開用戶表sysUser,查詢?cè)撚脩羰欠裼斜驹碌耐镀庇涗洠绻袆t不能再投票,給出提示并返回上級(jí)頁面。  2.2.2若無本月的投票記錄,則首先從評(píng)優(yōu)表yx中取出已知的侯選人數(shù),按一定的條件確定優(yōu)秀員工的人數(shù),確定的人數(shù)值也就是本輪投票的次數(shù)。將由員工進(jìn)行差額不重復(fù)投票,評(píng)選出本月優(yōu)秀員工。  2.2.3單擊投票按鈕開始投票,系統(tǒng)首先判斷本輪投票是否完成,如果已完成則退出;退出前應(yīng)在sysUser表寫入當(dāng)前日期,因?yàn)槊總€(gè)用戶每月至多只能進(jìn)行一次評(píng)優(yōu)投票。下次投票時(shí)若在sy

6、sUser表查詢出已有相同月份,表明已投過票,則不能再投票。這樣可有效阻止多次登錄重復(fù)投票?! ?.2.4如果本輪投票沒有完成,投票時(shí)應(yīng)確定不重復(fù)投票,鼠標(biāo)點(diǎn)擊某候選人所在行的主鍵值賦給變量str,將變量str與已存在數(shù)組中的str值比較,如果相同則表示重復(fù)投票給同一人,本票無效;直到投票選擇侯選人的str與數(shù)組中的str值不相同時(shí),將不重復(fù)投票的主鍵值str存入數(shù)組中?! ?.2.5從yx表中找到與數(shù)組元素str相同主鍵所在記錄的票數(shù)字段qty值,賦給變量yxqty,給yxqty加1,然后更新表中投票值。每月投票后,yx表中票數(shù)較多的前幾人即為評(píng)選出的本月優(yōu)秀員工。  

7、2.2.6考慮到用戶可能在投票中途非正常退出,所以投票開始時(shí)對(duì)數(shù)組和下標(biāo)清零?! ≡u(píng)優(yōu)投票模塊設(shè)計(jì)流程圖如圖2-2所示,評(píng)優(yōu)投票后臺(tái)頁yx-vote.aspx.cs代碼如下:  2.3啟動(dòng)時(shí)自執(zhí)行部分:  2.3.1啟動(dòng)時(shí)自動(dòng)執(zhí)行開始部分的初始化,然后執(zhí)行Page_Load事件,從sysUser表中查詢用戶是否有本月投票記錄,有則退出評(píng)優(yōu)頁面,返回到y(tǒng)x-voteResult.aspx頁面顯示投票結(jié)果?!   ?.3.2在Page_Load事件中引入Page對(duì)象屬性Page.IsPostBack,當(dāng)X頁第一次啟動(dòng)時(shí),!Page

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。