• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于AJAX的在線考試系統(tǒng)注冊(cè)登錄頁(yè)面的實(shí)現(xiàn)

    2014-12-31 00:00:00王少豪
    電子世界 2014年20期

    【摘要】作為結(jié)合傳統(tǒng)考試模式與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的系統(tǒng),它面向的對(duì)象既是大范圍的群體,這個(gè)群體中每個(gè)人的計(jì)算機(jī)操作水平參差不齊,所以首先整個(gè)操作系統(tǒng)務(wù)求界面簡(jiǎn)潔大方,操作簡(jiǎn)單方便,這樣,在系統(tǒng)使用過(guò)程中,使人一目了然,不至于因?yàn)榭荚嚳颇恐R(shí)以外的原因而影響了最終的科學(xué)評(píng)價(jià)得分。其次,網(wǎng)絡(luò)考試系統(tǒng)面向的對(duì)象又是特定的群體,所有考試者只有在獲得認(rèn)證的情況下,通過(guò)相應(yīng)的用戶名和密碼驗(yàn)證之后才能登陸系統(tǒng)進(jìn)行考試。通過(guò)AJAX交互頁(yè)面技術(shù)在頁(yè)面無(wú)需重新載入的情況之下,能夠?qū)?yè)面的局部進(jìn)行更新。

    【關(guān)鍵詞】AJAX;數(shù)據(jù)閱讀器;getcon方法

    一、應(yīng)用AJAX無(wú)刷新技術(shù)的注冊(cè)頁(yè)面實(shí)現(xiàn)

    考試系統(tǒng)使用之前,需要注冊(cè)考生準(zhǔn)考證號(hào),設(shè)計(jì)制作考生注冊(cè)頁(yè)面。利用AJAX技術(shù),加入ScriptManage腳本管理員控件和UpdatePanel局部更新面板控件,采用異步數(shù)據(jù)的傳輸方式,把數(shù)據(jù)傳到數(shù)據(jù)庫(kù)中,經(jīng)過(guò)數(shù)據(jù)庫(kù)準(zhǔn)考證號(hào)比對(duì)驗(yàn)證沒有注冊(cè)過(guò)之后,方可注冊(cè)。注冊(cè)頁(yè)面提交注冊(cè)信息至數(shù)據(jù)庫(kù),再次比對(duì)該注冊(cè)準(zhǔn)考證號(hào)是否合法,如果與事先添加進(jìn)數(shù)據(jù)表的合法準(zhǔn)考證號(hào)字段相匹配,則驗(yàn)證通過(guò);如果并非事先確認(rèn)好的準(zhǔn)考證號(hào),則可以由管理員手動(dòng)驗(yàn)證,確認(rèn)是否通過(guò),通過(guò)之后,則可以使用準(zhǔn)考證號(hào)和密碼登陸考試系統(tǒng),否則將不能使用。

    鑒于以上設(shè)計(jì)思路,在頁(yè)面注冊(cè)環(huán)節(jié)考慮加入一個(gè)Table控件來(lái)進(jìn)行結(jié)構(gòu)設(shè)計(jì),使用AJAX無(wú)重刷技術(shù),添加一個(gè)ScriptManage控件和一個(gè)UpdatePanel控件。在UpdatePanel控件中加入7個(gè)TextBox控件、2個(gè)DropDownList控件、4個(gè)Button按鈕控件、1個(gè)RequiredFieldValidator控件、1個(gè)CompareValidator控件以及1個(gè)ValidationSummary控件,具體用途與屬性設(shè)置如下:

    表1-1 注冊(cè)頁(yè)面控件用途與屬性設(shè)置

    Tab.1-1 Registration page control purpose and attribute set

    控件類型 相關(guān)屬性設(shè)置 具體用途

    ScriptManage 無(wú) 管理頁(yè)面中Atlas服務(wù)器控件

    UpdatePanel 無(wú) 令A(yù)SP.NET服務(wù)器控件具有AJAX異步傳輸功用

    TextBox 無(wú) 用于準(zhǔn)考證號(hào)、學(xué)生姓名、密碼、重復(fù)密碼、密碼問題、密碼答案、電子郵件的輸入填寫

    DropDownList 無(wú) 用于“性別”和“所屬班級(jí)”

    Button Text屬性設(shè)置為“檢測(cè)注冊(cè)號(hào)”、“注冊(cè)”、“重置”、“關(guān)閉”四個(gè)內(nèi)容 檢測(cè)注冊(cè)號(hào)是否重復(fù)、注冊(cè)、重置和關(guān)閉按鈕功能

    RequiredFieldValidator ControlToValidate屬性設(shè)為txtStuPwd,其中TextMode設(shè)為Password、ErrorMessage屬性設(shè)為“密碼不允許空” 用于驗(yàn)證第一個(gè)密碼輸入

    CompareValidator ControlToValidate屬性設(shè)為txtStuPwd,其中TextMode設(shè)為Password、ErrorMessage屬性設(shè)為“兩次密碼不一致” 用于驗(yàn)證兩次密碼是否輸入一致

    ValidationSummary ShowMessageBox的屬性設(shè)為True 顯示錯(cuò)誤的信息

    二、注冊(cè)號(hào)檢測(cè)是否重復(fù)的實(shí)現(xiàn)

    為避免在注冊(cè)時(shí)發(fā)生與已注冊(cè)準(zhǔn)考證號(hào)相重復(fù)沖突的情況,設(shè)置在注冊(cè)頁(yè)面中添加一個(gè)檢測(cè)注冊(cè)號(hào)按鈕,利用SqlDataReader(數(shù)據(jù)閱讀器)調(diào)用ExceRead方法,讀取User數(shù)據(jù)表中的準(zhǔn)考證號(hào),來(lái)判別是否已存在,具體采用如下語(yǔ)句:

    SqlDataReader read = dataconn.ExceRead(\"select * from user where registrationnumbers='\" + this.txtStuID.Text + \"'\");

    三、系統(tǒng)登錄頁(yè)面設(shè)計(jì)

    為了使合法用戶能夠正常使用考試系統(tǒng),設(shè)置建立用戶登錄頁(yè)面。登陸頁(yè)面分普通考生登錄、教師登錄與管理員登錄三種,對(duì)應(yīng)各自不同的權(quán)限進(jìn)入。普通考生登錄即進(jìn)入考試系統(tǒng),準(zhǔn)備考試;教師與管理員登錄則進(jìn)入相應(yīng)后臺(tái)進(jìn)行管理。

    通過(guò)使用自定義方法getcon(),來(lái)判別用戶是admin、teacher、還是student。判斷是否管理員的部分代碼如下:

    private void getcon(int j)

    {

    SqlConnection con = dataconn.getcon();

    con.Open();

    SqlCommand com = con.CreateCommand();

    switch (j)

    {

    case 1:

    com.CommandText = \"select count(*) from user.Administrator where Name='\" + this.txtUserName.Text + \"'and PWD='\" + this.txtPwd.Text + \"'\";

    int count1 = Convert.ToInt32(com.ExecuteScalar());

    if (count1 gt; 0)

    {

    Application[\"Name\"] = txtUserName.Text;

    Application[\"PWD\"] = txtPwd.Text;

    Page.Response.Redirect(\"user/admin.aspx\");

    }

    else

    {

    Response.Write(“l(fā)t;script lanuage= javascriptgt;alert(‘該用戶名或密碼有誤!’); location=’javascript:history.go(-1)’lt;/scriptgt;”);

    }

    break;

    四、密碼找回功能設(shè)計(jì)

    針對(duì)有的用戶經(jīng)常會(huì)忘記自己密碼的情況,考慮設(shè)計(jì)找回密碼功能。通過(guò)登錄頁(yè)面的“找密”按鈕來(lái)進(jìn)入密碼找回頁(yè)面,主要分2步進(jìn)行,首先是確認(rèn)自己的準(zhǔn)考證號(hào)碼,輸入完成之后點(diǎn)擊確定,將會(huì)通過(guò)公共類Datacon的getcon()方法建立與數(shù)據(jù)庫(kù)表User的連接,通過(guò)比對(duì)數(shù)據(jù)庫(kù)文件,判斷是否存在此準(zhǔn)考證號(hào),如存在,則進(jìn)入第二個(gè)頁(yè)面,出現(xiàn)相應(yīng)密碼提示問題,否則顯示無(wú)此學(xué)生編號(hào)或者輸入有誤。當(dāng)回答了相應(yīng)密碼提示答案之后,點(diǎn)擊確定,進(jìn)行判斷是否正確。如正確,則自動(dòng)發(fā)送至注冊(cè)登錄郵箱。

    綜上所述,采用基于AJAX的在線考試系統(tǒng)注冊(cè)登錄頁(yè)面使得網(wǎng)頁(yè)應(yīng)用能夠向更小、更快、更友好的方向發(fā)展,并能被所有主流瀏覽器所支持,有比較好的效果。

    參考文獻(xiàn)

    [1]石志國(guó).ASP.NET程序設(shè)計(jì)實(shí)用教程[M].電子工業(yè)出版社,2006:32-40.

    [2]王會(huì)林.Hibernate、Struts和AJAX在Web開發(fā)中的綜合應(yīng)用[J].現(xiàn)代計(jì)算機(jī)(下半月)版,2007(17):129-231.

    [3]陳磊.通用考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2007,17(2):140-143.

    平陆县| 通海县| 八宿县| 师宗县| 栾川县| 龙州县| 西和县| 惠来县| 醴陵市| 始兴县| 无为县| 会同县| 宝清县| 郴州市| 福州市| 青川县| 陇南市| 千阳县| 永济市| 安国市| 吴江市| 河源市| 台南市| 稷山县| 鄂托克前旗| 颍上县| 上栗县| 岳阳县| 特克斯县| 龙江县| 英吉沙县| 广西| 敦煌市| 巴楚县| 大荔县| 温宿县| 韩城市| 攀枝花市| 桐柏县| 鲁山县| 精河县|