劉小溪+++李彥明
摘 要:在實際環(huán)境中,無記名投票制被用在愈來愈多的場合,介紹的會議用無記名投票系統(tǒng),借助PC、手機等通用終端和以太網絡融入并控制無記名投票過程。系統(tǒng)適用于會議時的無記名投票、表決活動,較傳統(tǒng)的紙質選投票方式有計票時間快、計票結果準確、計票過程秘密、節(jié)約資源等優(yōu)點;較基于非通用硬件的電子投票系統(tǒng)等具有搭建成本低,部署改動便捷,硬件可通用易推廣等優(yōu)點。
關鍵詞:無記名投票;投票系統(tǒng);B/S;控制管理
引言
無記名投票(Vote by ballot) 又稱不記名投票、匿名投票、秘密投票,是一種用于選舉的投票制度。一般是指,投票人在投票時,選票不用寫下自己的名字和身份識別,避免非自愿讓人知道自己的投票意向。由于無記名投票制在投選過程中不公開身份的保密性質有利于選舉人、表決人消除顧慮,完全按照自己的意志行使選舉權或表決權,比公開投票(Vote)更容易表現(xiàn)出客觀、公平,在我國黨、政府、軍隊的選舉投票中被廣泛采用。隨著時代的發(fā)展,無記名投票制的實施過程也衍生了很多的形式,基本可以分為兩大類:一是,借助電子技術控制投票過程。a.基于非通用電子設備的投票管理系統(tǒng),如由嵌入式設備構成的專門為某事件特殊設計的投票控制系統(tǒng);b.基于通用電子設備的投票管理系統(tǒng),如基于普通服務器、PC、智能手機、平板電腦、以太網絡等通用電子設備之上的投票控制系統(tǒng)。二是,人力直接控制投票過程。如:由人力來控制投票過程的,黑白小球投選方式和紙質選票投選方式等。
在中國信息化、電子政務、電子政府建設蓬勃發(fā)展的背景下,借助電子技術控制投票過程的系統(tǒng)越來越流行。而目前對于基于非通用硬件的投票系統(tǒng)的研究力量比較多,發(fā)展也很快。對于通用硬件的會議環(huán)境下適用的投票系統(tǒng)相對較少。本文試圖對一種高效的基于B/S架構的投票管理系統(tǒng)進行描述。
1 B/S會議用無記名投票系統(tǒng)功能簡介
1.1 投票選舉活動的管理員實時全程控制整個投票過程。
1.2 管理員在建立投票時指定本次投票活動的候選項,是否可棄權,單票的最少、最多選數(shù)和其他一些細節(jié)。
1.3 選舉人每人一臺聯(lián)網投票用通用終端。
1.4 管理員提前確定選舉人范圍及做好訪問控制設置。會場外不具備選舉資格的人,無法訪問投票系統(tǒng)。
1.5 選舉人終端的屏幕由管理員對投票過程的實時控制而隨時有相應地變化。
1.6 選舉人可以實時看到選舉人的投選數(shù)據(jù)。選舉結束后,可以很快(如在1秒鐘以內)給出可打印的選舉結果。
2 硬件環(huán)境
2.1 服務器:對于候選人在1000以內的選舉活動可選擇一臺中等性能的PC當服務器,如配置CPU主頻≥1.7GHZ、CPU核數(shù)≥2,內存≥2G,千兆網卡。如果候選人在10000時,根據(jù)具體情況還可以采用反向代理,采用多網卡做TEAM,具備條件的話亦可采使專門的服務器或虛擬機,具體型號可根據(jù)情況選擇。
2.2 投票用終端:每一個選舉人配備一臺投票終端。投票終端可以是PC或帶瀏覽器的觸屏手機或平板電腦等。終端須能通過以太網連接到服務器的http服務開放的端口。
在選舉人終端所連接路由器或交換機設備中配置選舉終端的IP地址與MAC地址綁定。如網絡環(huán)境采用DHCP動態(tài)分配IP地址,則需要為每個選舉終端配置一個靜態(tài)地址分配條目。如選舉終端采用手機或平板電腦,則建議適當?shù)卦跁龈浇O置熱點,使無線信號盡量分布均勻。
3 服務器軟件環(huán)境選擇
3.1 操作系統(tǒng)可選擇linux或windows。
3.2 數(shù)據(jù)庫方面可在諸多關系型數(shù)據(jù)庫管理系統(tǒng),如流行的Postgresql、Mssql、Mysql、Oracle中選擇一個。
3.3 http服務可根據(jù)情況在Apache httpd,Ngix,Tomcat,IIS等中選擇一款,原則是須能很好的支持所選擇的動態(tài)網頁語言,本例中使用的Apache httpd。
3.4 動態(tài)網頁語言可根據(jù)環(huán)境在asp,.net系列,php,jsp等或CGI支持的各種語言中選擇一種,本例中使用了PHP。
4 瀏覽器端設計
在B/S架構的程序中,瀏覽器端是使用者與系統(tǒng)互動的主要接口,瀏覽器端的設計在一定程度上決定了系統(tǒng)整體是否成功。
主要內容有:
(1) 使用自我刷新或ajax實現(xiàn)每間隔一段時間,從實時從服務器獲取投票狀態(tài),展示適當頁面內容。如:使用javascript語句setTimeout('location.href=location.pathname',4000);
實現(xiàn)每間隔4秒鐘,自動刷新頁面。刷新后根據(jù)讀取到的最新的投票狀態(tài),如投票未開始、投票已啟動、投票已結束等展示適當?shù)捻撁娼o用戶。
(2) 實時監(jiān)視投票人的輸入,對界面做出智能調整。
例如為了防止投票人多填候選項可以對投票頁面中的每一個標簽設置設置
onClick='stat(this)'動作映射
javascript函數(shù)stat用于統(tǒng)計已經點選的候選項數(shù)目。當已點選的候選項數(shù)目等于建立投票活動時設置的最大投選數(shù)時,無效其他所有未選取的候選項。
即對未選中的復選框in0:
用javascript做如下操作:
obj=document.getElementsByName("in0");
obj.disabled=true;
已確保投票人不能多選。
當已點選的候選項數(shù)少于本次投票的最大投選數(shù)時,有效所有未選取的候選項。使投票人可以自由選擇。endprint
5 服務器控制實現(xiàn)
服務器是投票活動的數(shù)據(jù)中心和控制中心。對控制投票活動中的狀態(tài)信息和投票數(shù)據(jù)信息應實現(xiàn)準確的控制和調度。
主要內容有:
(1) 通過對操作系統(tǒng)、http服務和數(shù)據(jù)庫管理系統(tǒng)的配置,應對多用戶并發(fā)投票時服務器各項資源負荷的合理分配。
(2) 在http服務中配置可訪問和不可訪問的IP信息。使在某個時間范圍內,可以訪問系統(tǒng)進行投票的人員得到控制。
假設http服務軟件使用的是Apache httpd,可通過修改httpd.conf文件,在文件夾權限說明標簽中配置描述項
Order allow,deny
Deny from all
Allow from 192.168.1
Allow from 192.168.3.1
這樣就使IP屬于192.168.1.1~192.168.1.255范圍內或IP等于192.168.3.1的投票端才能訪問系統(tǒng),確保了投票過程的安全性。
(3) 管理員的登錄用session變量進行安全控制,登錄的有效期建議設置在600秒~2400秒之間。
6 基于B/S的會議用無記名投票系統(tǒng)的特點及推廣價值
系統(tǒng)具有以下特點:(1) 硬件環(huán)境容易構建,可以利用單位已有的資源,軟件選取自由,部署相對便捷。(2) 控制靈活,操作方便,過程安全。(3) 系統(tǒng)對投票的統(tǒng)計結果準確率高,工作穩(wěn)定可靠,經某軍級部隊單位連續(xù)3年用于多項會議的無記名投票,整套系統(tǒng)運行穩(wěn)定,各項環(huán)節(jié)銜接流暢、準確無故障。
參考文獻
[1]莊和誠.ballot[J].中國翻譯,1985.
[2]王培明.“無記名投票”的由來[J].秘書,2008.
[3][美]弗蘭納根.JavaScript權威指南(第六版)[M].淘寶前端團隊譯.北京:機械工業(yè)出版社,2012.
[4]屈展,李嬋.JSON在Ajax數(shù)據(jù)交換中的應用研究[J].西安石油大學學報(自然科學版),2011.
[5]潘凱華,劉中華等.PHP從入門到精通(第二版)[M].北京:清華大學出版社.2012.endprint