2013-03-25 44 views
0

我使用asp.net,vb.net和sql-server。如何從我的數據庫中獲取類型

我有一個名爲「登錄」,其中包含用戶名,密碼和類型的表。 根據類型,將發生頁面重定向。

我的系統有管理員,學生和講師。每個人都有自己的頁面和控件。

如何根據用戶名從表格中獲取類型(當用戶鍵入並單擊登錄名時,我將從文本框中獲取)?

感謝

+0

你現在怎麼檢查密碼是好的? (也許該代碼可以修改爲「類型」也) – 2013-03-25 08:07:57

回答

0

你可以在表中的一個字段,您存儲用戶的細節叫用戶類型 所以,當一個人從你的登錄頁面登錄,您只需將要得到這個值了。然後你可以使用開關盒重定向到不同的頁面。

+0

很好的答案,但我有類型字段已經 我的qust是如何從數據庫中獲得此​​值 劑量它需要任何方法來獲得它或什麼 – 2013-03-25 07:51:53

+0

我猜猜別人用更好的細節回答了它。請參考他們。 :-) – 2013-03-25 08:59:01

0

查詢可能是這樣的:

SELECT 
     UserType 
    FROM 
     Login 
    WHERE 
     username = @your_username 

你可以把這個在函數或存儲過程,並從應用程序調用它,同時提供參數。

+0

我有這個功能取得用戶名 [code] [code] – 2013-03-25 07:58:14

+0

哪個函數? – veljasije 2013-03-25 08:00:15

0

您需要在您的ASP.NET頁面創建一個RecordSet對象。 用於打開查詢到這個記錄:

​​

ASP.NET頁面然後檢查有SWITCH CASE結構上TYPE列。

3

驗證密碼&使用SQL查詢從數據庫獲取類型。像

select username,user_type from myTable where username='john' AND password='abc'; 

現在你的登錄頁面上的東西,你可以通過你的數據層&重定向用戶類型值取基於他的角色的頁面。這只是粗糙,但你有想法

string user_type, string userName; 
//Execute data reader 
if(myReader.Read()) 
{ 
    userName= myReader[0].ToString(); // you can also make a class 
    userType=myReader[1].ToString(); // you can also store these values in Session 
} 
// Close connection etc. 

switch (userType) 
{ 
    case "admin": 
       Response.Redirect("~/admin/Default.aspx"); break; 

    case "user": 
       Response.Redirect("~/public/Default.aspx"); break; 

    case default: 
       // Redirect to your default page for default user 
} 
相關問題