freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

后臺(tái)考試管理功能模塊的設(shè)計(jì)與開發(fā)畢業(yè)論文(編輯修改稿)

2024-07-25 02:02 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 是網(wǎng)站名稱3wangzhiVarChar50是網(wǎng)址4addtimeDateTime8是添加時(shí)間7.報(bào)考記錄表報(bào)考記錄表用來(lái)記錄所有考生的報(bào)名信息,準(zhǔn)考證號(hào)以及成績(jī)。其中課程ID是外鍵,對(duì)應(yīng)考試課程表的主鍵,通過(guò)此關(guān)聯(lián)關(guān)系來(lái)獲取考試課程的詳細(xì)信息;考生ID也是外鍵,對(duì)應(yīng)考生信息表的主鍵,通過(guò)此關(guān)聯(lián)關(guān)系來(lái)獲取考生的詳細(xì)信息??忌谇芭_(tái)報(bào)名的時(shí)候會(huì)將報(bào)名信息記錄到此表中,后臺(tái)管理員在查詢考生報(bào)考信息以及對(duì)每一門考試設(shè)置成績(jī)的時(shí)候都是從此表獲取的數(shù)據(jù),并將設(shè)置的成績(jī)記錄在此表的cj屬性中。表37 報(bào)考記錄表序號(hào)字段名稱字段類型大小允許為空備注1idInt4自增編號(hào)主鍵2kaoshiIdInt4否外鍵,對(duì)應(yīng)課程表的主鍵3kaoshengIdInt4否外鍵,對(duì)應(yīng)考生表的主鍵4zhunkaozhengVarChar50是準(zhǔn)考證號(hào)5addtimeDateTime8是報(bào)名時(shí)間6cjFloat8是成績(jī) 第四章 系統(tǒng)實(shí)現(xiàn) 本模塊負(fù)責(zé)后臺(tái)管理員登錄的功能,權(quán)限分為超級(jí)管理員和普通管理員,超級(jí)管理員只有一個(gè),而普通管理員可以有多個(gè)。超級(jí)管理員和普通管理員的權(quán)限基本一致,不同的是超級(jí)管理員可以對(duì)普通管理員的信息進(jìn)行管理。網(wǎng)站首頁(yè)如圖51。圖51 網(wǎng)站首頁(yè) 點(diǎn)擊導(dǎo)航欄中的“后臺(tái)管理”進(jìn)入管理員登錄界面,如圖52所示。 圖52 后臺(tái)登錄界面 本模塊是系統(tǒng)登錄界面,實(shí)現(xiàn)的功能是檢測(cè)合法用戶,驗(yàn)證其用戶名密碼,以杜絕非法用戶侵入系統(tǒng)。 本模塊界面就用戶名和密碼兩個(gè)文本框和一個(gè)登錄按鈕,但實(shí)現(xiàn)的方法比較復(fù)雜,因?yàn)橄到y(tǒng)要自動(dòng)判斷其輸入的用戶名及密碼的正誤,還要自動(dòng)識(shí)別其權(quán)限(超級(jí)管理員與普通管理員之分),如果登錄正常后,系統(tǒng)要將當(dāng)前用戶名和權(quán)限記錄下來(lái)以便之后其他操作給予適當(dāng)?shù)臋?quán)限分配。只有輸入正確的用戶名和密碼才能夠登錄成功,否則無(wú)法登錄,并且會(huì)彈出如圖53所示提示框。圖53 錯(cuò)誤用戶名或密碼提示框  。實(shí)現(xiàn)代碼如下所示。//首先創(chuàng)建一個(gè)bean實(shí)例,id來(lái)確認(rèn)bean實(shí)例的名稱,scope來(lái)指定該實(shí)例的作用范圍是page,也就是JSP文件以及此文件中的所有靜態(tài)包含文件中使用Bean,直到頁(yè)面執(zhí)行完畢向客戶端發(fā)回響應(yīng)或轉(zhuǎn)到另一個(gè)文件為止。class用來(lái)指定所要調(diào)用的外部文件的類名?! sp:useBean id=connDbBean scope=page class=/  form name=form1 method=post action= 用戶:input name=username type=text id=username 密碼:input name=pwd type=password id=pwd input type=submit name=Submit value=登錄 input type=reset name=Submit2 value=重置  /form  。如果沒(méi)找到則輸出提示框并且跳轉(zhuǎn)至上一個(gè)頁(yè)面,如果找到了則返回該用戶的用戶名以及權(quán)限值。實(shí)現(xiàn)代碼如下所示。//(用戶名),pwd(密碼)和cx(權(quán)限)的值。  String uid=(username)。  String pwd=(pwd)?! tring cx=new String((cx).getBytes(8859_1))。//定義SQL語(yǔ)句從數(shù)據(jù)庫(kù)allusers中查詢上面定義的屬性值。String sql=select * from [allusers] where username=39。+uid+39。 and pwd=39。+  pwd+39?! ∪缓笳{(diào)用connDbBean實(shí)例中的executeQuery方法對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,并將查詢結(jié)果保存在查詢結(jié)果集RS_result中:  ResultSet RS_result=(sql)。connDbBean實(shí)例所指向的類db中的executeQuery方法實(shí)現(xiàn)如下:  public ResultSet executeQuery(String sql) { try{ connect=(sConnStr,sa,111)。       //連接數(shù)據(jù)庫(kù) Statement stmt=()。//向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句 rs=(sql)。//存儲(chǔ)查詢結(jié)果集 }catch(SQLException ex){ (())。 } return rs。 }//對(duì)查詢結(jié)果集RS_result中的數(shù)據(jù)進(jìn)行驗(yàn)證:如果其中沒(méi)有數(shù)據(jù),那么利用aler方法彈出提示框:  if(!())  { (scriptalert(39。你輸入的用戶不存在或密碼錯(cuò)誤,請(qǐng)重新登錄!39。)。(1)。/script)。//跳回上一頁(yè)  }//如果有數(shù)據(jù),那么利用session對(duì)象的setAttribute方法創(chuàng)建屬性u(píng)sername和cx,并給它們分別賦值為uid,cx。  else  { (username,uid)?! ? (cx,(cx))。}   ()。   }   ()。//關(guān)閉結(jié)果集對(duì)象 管理員成功登錄以后便跳轉(zhuǎn)至后臺(tái)信息管理頁(yè)面,如圖54所示。圖54 后臺(tái)歡迎頁(yè)面其中首頁(yè)為本網(wǎng)站負(fù)責(zé)人的聯(lián)系信息,包括聯(lián)系人,電話,手機(jī)號(hào)碼,郵箱以及地址等信息。網(wǎng)站右上角可以顯示系統(tǒng)當(dāng)前時(shí)間。利用JavaScript腳本語(yǔ)言實(shí)現(xiàn)此功能:  script  function tick() {var ye,mo,da,hours, minutes, seconds, xfile,intHours, intMinutes, intSeconds,today。 today = new Date()。ye = ()。mo = ()+1。  if (mo 10) {mo = 0+mo。}  da = ()。  if (da 10)   {da = 0+da。}    intHours = ()。intMinutes = ()。    intSeconds = ()?! f (intHours == 0)   {hours = 12:。xfile = PM。//午夜}   else if (intHours 12)    {hours = intHours+:。xfile = AM。//上午}  else if (intHours == 12)    {hours = 12:。xfile = PM。//正午}  else    {intHours = intHours 12。hours = intHours + :。xfile = PM。//下午}  if (intHours 10)    {hours = 0+intHours+:。}  if (intMinutes 10)    {minutes = 0+intMinutes+:。}   else   {minutes = intMinutes+:。}  if (intSeconds 10)    {seconds = 0+intSeconds+ 。}   else    {seconds = intSeconds+ 。}  var color, size, face, out。var text = black。var font_size = 1。var font_face   = Arial?! olor = (text)? text : black?! ize = (font_size)? font_size : 1。face = (font_face)? font_face : Arial。  timeString = font style=39。fontsize:14px。39?! imeString += ye++mo++da+ ?! imeString += hours+minutes+seconds+ +xfile+amp。nbsp。amp。nbsp。amp。nbsp?! ?= timeString?! ?tick()。, 100)。 }   = tick。  /script 管理員賬號(hào)管理功能如圖55所示。圖55 管理員賬號(hào)管理 點(diǎn)擊左側(cè)導(dǎo)航欄中“管理員賬號(hào)管理”時(shí)首先會(huì)引發(fā)一個(gè)判定操作:如果該管理員為超級(jí)管理員,則點(diǎn)擊左側(cè)導(dǎo)航欄中“管理員賬號(hào)管理”可以開始對(duì)管理員的信息進(jìn)行管理。如圖55所示。如果該管理員為普通管理員,則沒(méi)有權(quán)限進(jìn)行此項(xiàng)操作,點(diǎn)擊“管理員賬號(hào)管理”會(huì)彈出如圖56所示警告框。圖56 普通管理員無(wú)權(quán)進(jìn)行管理員賬號(hào)管理編寫Java代碼段對(duì)管理員身份進(jìn)行驗(yàn)證,登錄時(shí)我們將管理員的權(quán)限屬性保存在session對(duì)象的cx屬性中,現(xiàn)在再通過(guò)session的getAttribute方法獲取cx屬性并進(jìn)行判定:  % if (().getAttribute(cx).equals(超級(jí)管理員))   {}  else   {(scriptalert(39。對(duì)不起,您沒(méi)有這個(gè)權(quán)限!!39。)。   ()。/script)。 }  % 管理員賬號(hào)管理包含兩個(gè)功能,上方是添加新管理員,包括用戶名和密碼兩個(gè)可見字段,還有一個(gè)隱藏字段是權(quán)限。下方是將已有的管理員信息以列表的形式列出,簡(jiǎn)單明了! 1.超級(jí)管理員可以添加普通管理員信息,如圖55所示。實(shí)現(xiàn)代碼如下。//首先創(chuàng)建bean實(shí)例connDbBean,以便以后文件使用  jsp:useBean id=connDbBean scope=page class=/  form name=form1 id=form1 method=post action=  tabletrtd用戶名:/td tdinput name=username type=text id=username //td/tr...... trtdinput type=submit name=Submit value=確認(rèn)添加 onclick=  return check()。 / input type=reset name=Submit2 value=重置 //td/tr  /table  輸入管理員信息后點(diǎn)“確認(rèn)添加”。//(用戶名)和pwd1(新密碼)和pwd2(確認(rèn)密碼):  %String username=(username)?!?String pwd=(pwd1)?!?String pwd2=(pwd2)。//用connDbBean實(shí)例中的executeQuery方法向數(shù)據(jù)庫(kù)查詢對(duì)應(yīng)數(shù)據(jù),并將查詢結(jié)果集保存在RS_result中:  ResultSet RS_result=(select * from [allusers]  where username=39。+username+39。)。//如果結(jié)果集中有數(shù)據(jù),表明新輸入的用戶名在數(shù)據(jù)庫(kù)中已存在,就要彈出提示框提示已存在:  if(()) { (scriptalert(39。該用戶名已經(jīng)存在,請(qǐng)換其他用戶名!39。)?!?1)。/script)。//控制頁(yè)面跳轉(zhuǎn)至上一頁(yè) }//驗(yàn)證密碼是否為空:  else if(()){  (scriptalert(39。密碼不能為空!39。)?! ?1)。/script)。}//驗(yàn)證新密碼和確認(rèn)密碼是否一致:else if(!(pwd2)){(scriptalert(39。密碼輸入不一致!39。)。(1)。/script)。}//如果上面的驗(yàn)證夠通過(guò),那么執(zhí)行executeUpdate方法向數(shù)據(jù)庫(kù)中插入新輸入的數(shù)據(jù):else{String sql=insert into allusers(username,pwd) values(39。+username+39。,39。+pwd+39。)。 (sql)。 (scriptalert(39。添加成功!!39。)。 =39。39。/script)。 }  ()。%//關(guān)閉查詢結(jié)果集對(duì)象  executeUpdate方法中的核心代碼如下?! ublic void executeUpdate(String sql) {Statement stmt=null。 rs=null。 try { connect=(sConnStr,sa,111)。 stmt=()。 (sql)。 ()。 ()。 }如果用戶名可以用,則提示“添加成功”,點(diǎn)擊確定可以看到下面的管理員信息列表中增加了剛才所添加的管
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1