摘要:ASP.net使用者登入驗證控制項應用在自己的資料庫
原範例是topcat用vb寫的,但因為要用到的是c#,所以拿來改寫了一下。
http://www.dotblogs.com.tw/topcat/archive/2008/03/05/1237.aspx
01
public partial class login : System.Web.UI.Page
02
{
03
Login Login1 = new System.Web.UI.WebControls.Login();
04
Label lblErrMsg = new System.Web.UI.WebControls.Label();
05
06
SqlConnection sqlconn = null;
07
08
protected void Page_Load(object sender, EventArgs e)
09
{
10
Login1 = (Login)LoginView1.FindControl("Login1");
11
lblErrMsg = (Label)LoginView1.FindControl("lblErrMsg");
12
sqlconn = new SqlConnection();
13
sqlconn.ConnectionString = "Data Source=m200w20;Initial Catalog=money_note;User Id=zzzz;Password=xxxx";
14
}
15
protected void LoginView1_ViewChanged(object sender, EventArgs e)
16
{
17
}
18
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
19
{
20
Session.RemoveAll();
21
if (chklogin(Login1.UserName, Login1.Password))
22
{
23
FormsAuthentication.RedirectFromLoginPage(Login1.UserName, true);
24
}
25
else
26
{
27
lblErrMsg.Text = "wrong id or password";
28
//FormsAuthentication.RedirectToLoginPage("chkerror");
29
30
}
31
}
32
private bool chklogin(string username, string pwd)
33
{
34
try
35
{
36
DataTable dt = new DataTable();
37
38
sqlconn.Open();
39
40
SqlCommand sqlcmd = sqlconn.CreateCommand();
41
string sql = "select * from money_user where user_name='" + username + "' and user_password='" + pwd + "'";
42
sqlcmd.CommandText = sql;
43
SqlDataReader sqldr = sqlcmd.ExecuteReader();
44
45
if (sqldr.HasRows) return true;
46
47
else
48
{
49
lblErrMsg.Text = "wrong id or password";
50
return false;
51
}
52
}
53
catch(Exception e)
54
{
55
return false;
56
}
57
58
}
59
private bool chklogin()
60
{
61
return true;
62
}
63
}
public partial class login : System.Web.UI.Page 02
{ 03
Login Login1 = new System.Web.UI.WebControls.Login(); 04
Label lblErrMsg = new System.Web.UI.WebControls.Label(); 05
06
SqlConnection sqlconn = null; 07
08
protected void Page_Load(object sender, EventArgs e) 09
{ 10
Login1 = (Login)LoginView1.FindControl("Login1"); 11
lblErrMsg = (Label)LoginView1.FindControl("lblErrMsg"); 12
sqlconn = new SqlConnection(); 13
sqlconn.ConnectionString = "Data Source=m200w20;Initial Catalog=money_note;User Id=zzzz;Password=xxxx"; 14
} 15
protected void LoginView1_ViewChanged(object sender, EventArgs e) 16
{ 17
} 18
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) 19
{ 20
Session.RemoveAll(); 21
if (chklogin(Login1.UserName, Login1.Password)) 22
{ 23
FormsAuthentication.RedirectFromLoginPage(Login1.UserName, true); 24
} 25
else 26
{ 27
lblErrMsg.Text = "wrong id or password"; 28
//FormsAuthentication.RedirectToLoginPage("chkerror"); 29
30
} 31
} 32
private bool chklogin(string username, string pwd) 33
{ 34
try 35
{ 36
DataTable dt = new DataTable(); 37
38
sqlconn.Open(); 39
40
SqlCommand sqlcmd = sqlconn.CreateCommand(); 41
string sql = "select * from money_user where user_name='" + username + "' and user_password='" + pwd + "'"; 42
sqlcmd.CommandText = sql; 43
SqlDataReader sqldr = sqlcmd.ExecuteReader(); 44
45
if (sqldr.HasRows) return true; 46
47
else 48
{ 49
lblErrMsg.Text = "wrong id or password"; 50
return false; 51
} 52
} 53
catch(Exception e) 54
{ 55
return false; 56
} 57
58
} 59
private bool chklogin() 60
{ 61
return true; 62
} 63
}