官术网_书友最值得收藏!

2.7 后臺登錄模塊設計

2.7.1 后臺登錄模塊概述

在網站前臺頁面底部設置了進入后臺登錄頁的“后臺入口”。后臺登錄頁面主要是用來對進入網站后臺的用戶進行安全性檢查,以防止非法用戶進入該系統的后臺。同時使用了驗證碼技術,防止使用注冊機惡意登錄本站后臺。后臺登錄頁面運行效果如圖2.27所示。

圖2.27 后臺登錄頁面運行效果

2.7.2 后臺登錄模塊技術分析

在后臺登錄模塊中主要應用了驗證碼技術。

目前,網站為了防止用戶利用機器人自動注冊、登錄、灌水,采用了驗證碼技術。所謂驗證碼,就是一串隨機產生的數字與英文字母組合成的4位字符串。本網站驗證碼如圖2.27所示。

在實現的過程中,將數字、英文字母存儲到字符串變量strchar中,使用String.Split方法以指定的分隔符(逗號)分離字符串strchar,將返回的字符串數組存儲到字符串數組變量VcArray中,最后使用隨機類Random成員方法Next(int t = rand.Next(61)),根據返回值t來獲取字符串數組VcArray中的字符。詳細代碼如下:

例程24 代碼位置:資源包\TM\02\B2C\B2C\App_Code\CommonClass.cs

注意

剛剛講解的驗證碼,只是為讀者起到了一個拋磚引玉的作用。本網站使用的驗證碼很容易被機器辨別出來,解決該問題的方法為:將驗證碼生成到圖片里,然后在圖片上加一些干擾素,在這樣的情況下,人通過肉眼難以辨別,那么機器將更難以識別。由于篇幅所限,關于這方面的技術這里不再深入講解,讀者可以上網查閱。

2.7.3 后臺登錄模塊實現過程

本模塊使用的數據表:tb_Admin

1. 設計步驟

(1)在該網站中的Manage文件夾下創建一個Web窗體,將其命名為Login.aspx。

(2)在Login.aspx頁中通過使用bootstrap+div為整個頁面進行布局,然后從“工具箱”→“標準”選項卡中拖放3個TextBox控件、一個Label控件和兩個Button按鈕控件。Login.aspx頁中各個控件的屬性設置及其用途如表2.5所示。

表2.5 Login.aspx頁中各個控件的屬性設置及其用途

2. 實現代碼

在該頁的后臺Login.aspx.cs頁中編寫代碼前,首先需要定義CommonClass類對象和DBClass類對象,以便在編寫代碼時,調用該類中的方法。代碼如下:

例程25 代碼位置:資源包\TM\02\B2C\B2C\Manage\Login.aspx

CommonClass ccObj = new CommonClass();
DBClass dbObj=new DBClass();

在Page_Load事件中,調用CommonClass類的RandomNum方法,顯示隨機驗證碼。代碼如下:

例程26 代碼位置:資源包\TM\02\B2C\B2C\Manage\Login.aspx

當用戶輸入完登錄信息時,可以單擊“登錄”按鈕,在該按鈕的Click事件下,首先判斷用戶是否輸入了合法的信息,如果輸入的信息合法,則進入網站后臺,否則彈出對話框,提示用戶重新輸入。代碼如下:

例程27 代碼位置:資源包\TM\02\B2C\B2C\Manage\Login.aspx

代碼貼士

?GetDataSetStr:調用公共類中的GetDataSetStr方法,執行SQL語句,返回一個數據源的數據表。

?dsTable:該對象為DataTable的一個實例對象,其數據為數據源的數據表tbAdmin。

?MessageBox:調用公共類中的MessageBox方法,返回一個對話框信息。

主站蜘蛛池模板: 宁河县| 昭平县| 广宁县| 饶阳县| 柳林县| 襄汾县| 民和| 盈江县| 平利县| 米易县| 商河县| 吴桥县| 日喀则市| 丹棱县| 三明市| 晋州市| 吴忠市| 瑞金市| 宣武区| 九龙坡区| 北安市| 六盘水市| 房产| 昌乐县| 肃北| 虹口区| 边坝县| 宁武县| 邹城市| 同心县| 特克斯县| 昌乐县| 高青县| 平舆县| 理塘县| 高尔夫| 临澧县| 临沂市| 鲁山县| 西华县| 辰溪县|