Để tạo trang đăng nhập thì phải lưu trữ dữ liệu về người dùng để kiểm tra. Ở đây xài SQL 2000 và dữ liệu người dùng được lưu trữ như sau.
ACCOUNTS ( _USERNAME, _PASSWORD, _ACCESSRIGHT )
Và dùng một store procedure để truy vấn lấy thông tin người dùng có tên:
sp_LogInCRM
CREATE proc sp_LogInCRM
@username varchar(30)
as
select _USERNAME, _PASSWORD, _ACCESSRIGHT
from ACCOUNTS
where _USERNAME=@username
GO
Tạo webform đăng nhập gồm label: lblMessages, Textbox: txtUsername, Texbox: txtPassword, Button: btnLogin
Trong web.config bạn thêm vào một node chứa chuổi kết nối cơ sở dữ liệu như sau: (tuỳ máy mà đổi tên cho đúng)
<connectionStrings>
<add name="CRMDatabase" connectionString="server=(local); Integrated Security=false; uid=sa; pwd=; database=CRMDatabase;" />
</connectionStrings>
Một class Login sẽ làm việc đăng nhập với code như sau:
using WCF = System.Web.Configuration.WebConfigurationManager; //gọi sử dụng web.config using System.Data.SqlClient;
/// <summary>
/// Summary description for clsLogIn
/// </summary>
{
{
}
{
}
{
}
{
//set { bolIsAdmin = value; }
}
{
//set { bolIsLoged=value;}
}
{
strUserName = username;
strPassword = password;
LogIn();
}
{
Method clsMT
= new Method
();
String strCon
= WCF
.ConnectionStrings["CRMDatabase"].ConnectionString; SqlConnection myCon
= new SqlConnection
(strCon
); myCon.Open();
SqlCommand myCommand
= new SqlCommand
(); myCommand.CommandText = "sp_LogInCRM";
myCommand.Parameters.Add("@username", UserName);
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Connection = myCon;
SqlDataAdapter myAdapter
= new SqlDataAdapter
(myCommand
); DataTable myDataTable
= new DataTable
(); myAdapter.Fill(myDataTable);
if (myDataTable
.Rows.Count == 0) {
strMessage = "Tên đăng nhập không đúng!!!!";
}
else if (myDataTable
.Rows[0][1].ToString() != strPassword
) {
strMessage = "Mật khẩu không đúng!!!!";
}
{
if (myDataTable
.Rows[0][2].ToString() == "ADMIN") }
}
}
Trong trang đăng nhập tại code behind bạn viết code để thực thi việc đăng nhập như sau:
{
clsLogIn objUser
= new clsLogIn
(txtUserName
.Text.Trim(), txtPassword
.Text.Trim()); {
Session["sesLogin"] = objUser;
Response.Redirect("HomePage.aspx"); //Nếu đúng tên đăng nhập và mật khẩu thì gọi trang HomePage.aspx hiển thị
}
{
lblMessages.Text = objUser.Message; //Thông báo lỗi ra màn hình
}
}
Nếu thích thì có thêm mấy hàm mã hoá và giải mã cái password