當前位置:名人名言大全網 - 笑話大全 - 如何用數據庫驗證賬號和密碼?

如何用數據庫驗證賬號和密碼?

1,先建立壹個數據庫UserTest。

2.創建壹個名為UsersTable的表,設計這個表,創建三列:u_id,u_name,u_pwd。

3,u_id是int數據類型,增加1;U_name為nvarchar類型,長度為12;U_pwd為varchar類型,長度為12,然後保存表。

4.打開表格,在u_name的第壹行輸入“abc ”,在u_pwd輸入“abc”。關閉表格。

5.打開VS並創建壹個新的Web項目。雙擊default.aspx頁,然後

HTML代碼

& lt!-替換-& gt;

& ltbody style="margin: 0px " >

& ltform id = " form 1 " runat = " server " >

& lttable border = " 0 " cell padding = " 0 " cellspacing = " 0 " style = " width:100%;高度:50px " >

& lttr & gt

& ltTD style = " vertical-align:middle;寬度:50%;文本對齊:居中;字體粗細:粗體;字體大小:25px顏色:# 003366;字體系列:Arial”& gt雲蕾智聯的登錄演示

& ltTD style = " vertical-align:middle;text-align: left " >

& ltASP:Panel ID = " pnl login " runat = " server " Height = " 30px " Width = " 100% " & gt;

用戶名:

& lt!-對於密碼文本框,應該將TextMode屬性設置為Password,這樣輸入的值就會以* * * *的形式出現,這樣可以保護密碼在輸入的時候不被別人看到-& gt;

& ltASP:TextBox ID = " txbUserPassword " runat = " server " text mode = " Password " & gt;& lt/ASP:TextBox & gt;

& ltASP:Button ID = " btnLogin " Runat = " server " text = " log in " OnClick = " btnLogin _ Click "/& gt;& lt/ASP:Panel & gt;

& ltASP:Panel ID = " pnl welcome " runat = " server " Height = " 30px " Width = " 100% " & gt;

& ltASP:Label ID = " LBL welcome " runat = " server " & gt;& lt/ASP:Label & gt;

& ltASP:Button ID = " BTN quit " Runat = " server " causes validation = " false " text = " exit " width = " 146 px " onclick = " BTN quit _ click "/> & lt;/ASP:Panel & gt;

& lt/TD & gt;

& lt/tr & gt;

& lt/table & gt;

& lttable border = " 0 " cell padding = " 0 " cellspacing = " 0 " style = " width:100%;高度:100px " >

& lttr & gt

& ltTD style = " vertical-align:middle;text-align: center " >

& lt!-該信息用於顯示登錄是否成功-& gt;

& ltASP:Label ID = " LBL message " runat = " server " ForeColor = " # c 00000 " >& lt/ASP:Label & gt;& lt/TD & gt;

& lt/tr & gt;

& lt/table & gt;

& lt/form & gt;

& lt/body & gt;

& lt!-替換結束-& gt;

6.按F7進入代碼視圖,在Page_Load()中編寫以下代碼:

C#代碼

受保護的void Page_Load(對象發送方,EventArgs e)

{

//確保頁面是第壹次被訪問。

如果(!頁面。IsPostBack)

{

CheckPageStatus();

}

}

//通過判斷Session["UserName"]是否為空來檢查頁面是否登錄(如果登錄成功,會為Session["UserName"]註入壹個值,不會為空)。。否則視為沒有登錄)。

私有void CheckPageStatus()

{

if(會話["用戶名"]!=空)

{

pnlLogin。可見=假;

歡迎光臨。可見=真;

LblWelcome。Text = "歡迎登錄,"+session ["username"]。tostring ()+“同誌”;

}

其他

{

歡迎光臨。可見=假;

pnlLogin。可見=真;

}

//這是用來接收登錄或註銷後的信息。個人習慣,可以不用這樣。

if (Session["Message"]!=空)

{

lblMessage。Text = Session["Message"]。ToString();

會話。Remove(“消息”);

}

其他

lblMessage。Text =

}

7.讓我們結束吧。按F5運行並查看效果。妳會發現,當妳沒有登錄的時候,“退出”部分是不顯示的。太神奇了。

8.然後關閉這個IE頁面,按下VS左下角的“設計”切換到設計視圖。

9.在設計視圖中雙擊登錄按鈕,並為其編寫如下登錄代碼:

C#代碼

受保護的void btnLogin_Click(對象發送方,事件參數e)

{

//以下登錄方式只是我的習慣。我經常用DataTable做任何事情。建議妳不要依賴它…不然會被嘲笑…登錄有很多好方法,參考壹下就好。

string str connection = " SERVER =(local);DATABASE = UserTestUID = saPWD = ";//PWD=在後面寫上妳的SQL SERVER的sa密碼。

系統。data . sqlclient . sqlconnection cn =新系統。data . sqlclient . sqlconnection(str connection);

//SQL語句?妳沒辦法。只是復制它。

string strSql = " SELECT * FROM UsersTable WHERE u _ name = ' "+txbUserName。Text +" '和u_pwd='" + txbUserPassword。text+" ' ";

//SqlDataAdapter有什麽用?我建議妳去MSDN看看。

系統。data . sqlclient . sqldata adapter da =新系統。data . sqlclient . sqldata adapter(strSql,cn);

系統。data . DataTable dt = new DataTable();

達。填充(dt);

如果(dt。行數. Count & gt0)

{

會話["用戶名"] = dt。行[0]["u_name"]。ToString();

Session["Message"] = "登錄成功!";

回應。redirect(" default . aspx ");

}

其他

{

會話["Message"] = "登錄失敗。請重新登錄。;

回應。redirect(" default . aspx ");

}

}

10,然後按F5測試,在用戶名和密碼中輸入123,按“登錄”按鈕,會提示登錄失敗。如果輸入abc,會提示登錄成功。因為abc是數據庫中唯壹的用戶。

11,關閉IE頁面,最後我們退出。

12,返回設計視圖,雙擊“退出”按鈕,為其編寫以下代碼:

C#代碼

受保護的void btnQuit_Click(對象發送方,EventArgs e)

{

if(會話["用戶名"]!=空)

{

會話。Remove("用戶名");

會話["Message"] = "退出成功。歡迎再次光臨”;

回應。redirect(" default . aspx ");

}

}

13,按F5運行。登錄成功後,按“退出”按鈕,系統會提示您已經退出。

14,為了驗證用戶是否已經登錄,需要添加:

C#代碼

if(會話["用戶名"]!=空)

//用戶可以訪問。

其他

//如果用戶無法訪問,就扔回登錄頁面:Response。redirect(" log in . aspx ");