李淵
摘 要:隨著數(shù)信息化技術(shù)不斷推進,無紙協(xié)同辦公、智能的批量數(shù)據(jù)處理,已成為信息化建設(shè)的重要課題,越來越多的工作可以利用計算機技術(shù)來完成。本文主要描述了基于Asp+Access小型投票系統(tǒng)的設(shè)計與關(guān)鍵技術(shù)實施過程。
關(guān)鍵詞:Asp+Access;投票系統(tǒng)
1、引言
我校已進行了2屆的“優(yōu)秀名師課堂”評選,傳統(tǒng)一直由輔導(dǎo)員將學(xué)生召集在一起,發(fā)紙質(zhì)選票,然后人工唱票。這樣的工作冗長、枯燥,一個過程失誤將影響整個結(jié)果的公正。因此,設(shè)計一個一體化的系統(tǒng),來統(tǒng)籌的完成全部工作,它能讓工作變得更方便、有趣。網(wǎng)上投票系統(tǒng)的實現(xiàn),也可以帶動更多人參與到這項活動中,使得投票結(jié)果更真實。
2、需求分析與設(shè)計思路
所設(shè)計的系統(tǒng):(1)本次投票采取分配賬號投票,不接受注冊賬號或匿名投票。(2)直觀的將候選人信息展示給大眾。(3)投票結(jié)束后自動生成由高到低的票選結(jié)果。(4)投票操作過程簡潔,不符合數(shù)量要求的選票無法投出。
本次投票參與者按角色分為教師、學(xué)生,使用工號或?qū)W號登錄。分為2個登陸入口,除投票結(jié)果獨立為教師投票結(jié)果、學(xué)生投票結(jié)果外,系統(tǒng)內(nèi)所有信息均共享。每位參與者限定為低于6票或大于8票無法投出,投票后即刻在數(shù)據(jù)庫內(nèi)記錄下投出者賬號。該賬號若有再次投票操作,數(shù)據(jù)庫會比對已有投票記錄,彈出警告拒絕再次投票。
3、數(shù)據(jù)庫的設(shè)計
參加本次投票的約1700人,全部采用校園內(nèi)網(wǎng)登陸,數(shù)據(jù)文件大小理論遠(yuǎn)小于2G。基于參加人數(shù)及網(wǎng)絡(luò)環(huán)境,系統(tǒng)數(shù)據(jù)庫直接采用Access2010,它是微軟發(fā)布的關(guān)系數(shù)據(jù)庫管理系統(tǒng),具有使用簡潔方便,穩(wěn)定可靠等特點。數(shù)據(jù)庫命名為 voteresult.mdb,數(shù)據(jù)庫內(nèi)有以下幾個表:
(1)管理員信息(Admin):存放系統(tǒng)管理員信息。(2)受邀用戶信息(Tlogin 、Slogin):分開存放參加投票教師、學(xué)生的登陸賬號(Username)、密碼、登陸IP(LastLogin)、末次登陸時間等。(3)候選人信息(Info):存放候選人姓名(Nametitle)、Id(Hxid)、參選資料(Content)、教師投票數(shù)(Tps)、學(xué)生投票數(shù)(Sps)。(4)投票過程記錄(Tjilu、Sjilu):記錄教師和學(xué)生投出的8位候選人ID(SVote、TVote)、投票IP(Addip)、投票時間、投票者賬號(Addname)。
4、系統(tǒng)實施
4.1 添加受邀用戶信息
將受邀投票的用戶信息用Excel批量直接導(dǎo)入數(shù)據(jù)庫中,用戶密碼截取賬號后六位,使用Md5算法加密。
4.2 導(dǎo)入候選人信息,限制投票張數(shù)
管理后臺導(dǎo)入候選人資料。登錄頁首先對每位投票人投票數(shù)量限制,低于6票大于8票無法投出,主要代碼如下:
(1) id=request.form("id");if ?len(id)<22 then;response.write ""; response.end;end if
(2) if(this.checked) selectnum++ ; else selectnum--;if(selectnum > 8)
{ alert("最多選擇8位"); this.checked = false; selectnum--; ?}
4.3 投票過程
以下過程中代碼以學(xué)生登陸過程為例。
(1)進行身份檢測,是否擁有賬號密碼的合法用戶登錄。
用戶輸入的賬號和密碼與數(shù)據(jù)庫Slogin表中存儲的賬號Username字段匹配不到一致信息時,判定為非法用戶,強制返回登陸頁面。
sql="select * from Slogin where Username='"&Username&"' and Password='"&md5(Password)&"'";rs.open sql,conn,1,3;
if rs.eof then;response.write" 泸溪县| 彭泽县| 精河县| 吉林市| 高尔夫| 南乐县| 洛扎县| 荥阳市| 五家渠市| 滦平县| 苗栗县| 岳池县| 华亭县| 历史| 瑞金市| 乌拉特前旗| 东方市| 廉江市| 牟定县| 宝丰县| 丽水市| 普陀区| 成都市| 芜湖县| 叙永县| 宁化县| 长沙县| 米易县| 正安县| 阳山县| 拜泉县| 平度市| 万宁市| 左权县| 政和县| 北京市| 梅河口市| 闽清县| 额尔古纳市| 丁青县| 安塞县|