Hỏi cách tạo Form đăng nhập trong Access

Liên hệ QC

phuyen89

Thành viên tích cực
Tham gia
20/11/08
Bài viết
870
Được thích
334
Nghề nghiệp
Student
Chào mọi người.Mình có vấn đề này không biết làm như thế nào,chỉ biết làm mẫu thôi.Khi đặt PW cho Access thì dùng phần mêm phá PW chỉ có 10s là mở ra liền.Vì vật em thiết kế ra cái Form đăng nhập.
Khi người dùng nhập đúng tên truy cập do mình quy định và bấm đúng mật khẩu.Nhấn nút OK thì:
+nếu đúng mật khẩu và tên truy cập thì cho đăng nhập vào.
+Nếu sai thì sau khoảng 3 lần thì tự động thoát
Trường hợp người dùng nhập rồi nhưng không muốn nhấn OK mà nhấn CANCEL thì thoát luôn.
File của em thiết kế như sau:

----------
Lần sau bạn chú ý đặt tên đề tài cho rõ hơn nhé
 

File đính kèm

  • Form dang nhap.rar
    7.6 KB · Đọc: 4,105
Chỉnh sửa lần cuối bởi điều hành viên:
Chào mọi người.Mình có vấn đề này không biết làm như thế nào,chỉ biết làm mẫu thôi.Khi đặt PW cho Access thì dùng phần mêm phá PW chỉ có 10s là mở ra liền.Vì vật em thiết kế ra cái Form đăng nhập.
Khi người dùng nhập đúng tên truy cập do mình quy định và bấm đúng mật khẩu.Nhấn nút OK thì:
+nếu đúng mật khẩu và tên truy cập thì cho đăng nhập vào.
+Nếu sai thì sau khoảng 3 lần thì tự động thoát
Trường hợp người dùng nhập rồi nhưng không muốn nhấn OK mà nhấn CANCEL thì thoát luôn.
File của em thiết kế như sau:

----------
Lần sau bạn chú ý đặt tên đề tài cho rõ hơn nhé
Trước tiên bạn nên thiết kế 1 table để ghi thông tin cho người dùng.
Code như sau:

Trong Module:
Mã:
Option Compare Database
Public lngMyEmpID As Long

Code trong form đăng nhập:

Mã:
Option Compare Database
Private intLogonAttempts As Integer
Private Sub cboEmployee_NotInList(NewData As String, _
Response As Integer)
MsgBox "Ban phai nhap dung 'User name' cua ban.", _
vbInformation, Me.Caption
    Response = acDataErrContinue
End Sub
Private Sub cmdCancel_Click()
On Error GoTo Err_cmdCancel_Click
    DoCmd.Quit
Exit_cmdCancel_Click:
    Exit Sub
Err_cmdCancel_Click:
    MsgBox Err.Description
    Resume Exit_cmdCancel_Click
End Sub
Private Sub Form_Open(Cancel As Integer)
Me.cboEmployee.SetFocus
End Sub
Private Sub cboEmployee_AfterUpdate()
txtstrAccess = DLookup("strAccess", "tblEmployees", _
"[lngEmpID]=" & Me.cboEmployee.Value)
Me!txtUserName = Me!cboEmployee.Column(1)
Me.txtPassword.SetFocus
End Sub
Private Sub cmdLogin_Click()
   If IsNull(Me.cboEmployee) Or Me.cboEmployee = "" Then
            MsgBox "Ban phai chon 'User Name' cua ban.", _
            vbCritical, "User name"
            Me.cboEmployee.SetFocus
        Exit Sub
    End If
    If IsNull(Me.txtPassword) Or Me.txtPassword = "" Then
            MsgBox "Ban phai nhap mat khau cua ban vao o 'Password'.", _
            vbCritical, "Nhap mat khau"
            Me.txtPassword.SetFocus
        Exit Sub
    End If
    If Me.txtPassword.Value = DLookup("strEmpPassword", "tblEmployees", _
    "[lngEmpID]=" & Me.cboEmployee.Value) Then
        lngMyEmpID = Me.cboEmployee.Value
        MsgBox "Ban da dang nhap thanh cong...", vbInformation, "Dang nhap..."
        DoCmd.OpenForm "frmMain"
        Me.Visible = False
        Else
        MsgBox "Mat khau khong dung.  Vui long nhap lai.", _
        vbExclamation, "Sai mat khau!"
        Me.txtPassword.SetFocus
    End If
    intLogonAttempts = intLogonAttempts + 1
    If intLogonAttempts > 2 Then
        MsgBox "Mat khau khong dung, chuong trinh se thoat. Vui long lien he voi Admin.", _
        vbCritical, "Mat khau!"
        Application.Quit
    End If
End Sub

Bạn tham khảo thêm file đính kèm nhe.
 

File đính kèm

  • Login.rar
    58 KB · Đọc: 4,959
Mình cũng đang gặp khó khăn giống chủ topic, mình đã down file login về, file này rất hay, nhưng mình không biết làm cách nào để nhập nó vào phần mềm của mình cả. Bạn có thể chỉ mình cách nhập nó vào chương trình giúp mình không? Xin cám ơn
 
Mình cũng đang gặp khó khăn giống chủ topic, mình đã down file login về, file này rất hay, nhưng mình không biết làm cách nào để nhập nó vào phần mềm của mình cả. Bạn có thể chỉ mình cách nhập nó vào chương trình giúp mình không? Xin cám ơn
Trước hết bạn mở file của bạn ra trong ngăng Table click phải chuột, chọn Import... chọn file cần import, chọn gờ Table tblEmployees, Gờ Form chọn frmLogin, xong Import bình thường thôi bạn.
Chỉnh lại code khi đăng nhập thành công thì mở form bạn muốn hiện đầu tiên, và chỉnh lại phần startup là form frmlogin.
Chúc bạn thành công
 
chào các anh chị, em đang học về cơ sở dữ liệu về Access, em cũng thử làm Form đăng nhập như hướng dẫn của anh chị ở trên, em làm nó chay rồi, xong thỉnh thoảng nó lại mắc lỗi: nhập đúng mật khẩu và tên người dùng rồi mà vẫn báo lỗi dăng nhập sai. em ko hiểu mong anh chị chỉ giúp, em cảm ơn trước nhé!
em gửi bài kèm theo
 
file kèm theo
http://www.mediafire.com/?xgq3myxynn2

em xem lại rồi. cứ đăng nhập quá 2 lần là lại bị như vậy.Em chchưa biết nhiều về VBA , hình như theo em hiểu thì cái biến lưu số lần đăng nhập sai( quá 3 lần đăng chương trình sẽ thoát ) , nó lưu cả lần đăng nhập đúng. tại em chạy Form này thử riêng mà. anh chị nào chỉ dum em cái, bí nhất thì em cho cái điều kiện này lớn hơn nữa, thì ko có lỗi này.
intLogonAttempts = intLogonAttempts + 1
If intLogonAttempts > 2 Then
MsgBox "Mat khau khong dung, chuong trinh se thoat. Vui long lien he voi Admin.", _
vbCritical, "Mat khau!"
Application.Quit
End If
End Sub

chào anh chị, cái lỗi này em đã xử lý rồi ạ. chỉ cần gán biết nhớ số lần đăng nhập, khi đăng nhập thành công =0, thì chương trình chạy ổn định ko xảy ra lỗi nữa.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Nhưng cậu ơi, chỉnh code cho phù hợp với form bạn muốn mở sau khi đăng nhập thành công ở chôc nào thế?
 
Trước tiên bạn nên thiết kế 1 table để ghi thông tin cho người dùng.
Code như sau:

Trong Module:
Mã:
Option Compare Database
Public lngMyEmpID As Long

Code trong form đăng nhập:

Mã:
Option Compare Database
Private intLogonAttempts As Integer
Private Sub cboEmployee_NotInList(NewData As String, _
Response As Integer)
MsgBox "Ban phai nhap dung 'User name' cua ban.", _
vbInformation, Me.Caption
    Response = acDataErrContinue
End Sub
Private Sub cmdCancel_Click()
On Error GoTo Err_cmdCancel_Click
    DoCmd.Quit
Exit_cmdCancel_Click:
    Exit Sub
Err_cmdCancel_Click:
    MsgBox Err.Description
    Resume Exit_cmdCancel_Click
End Sub
Private Sub Form_Open(Cancel As Integer)
Me.cboEmployee.SetFocus
End Sub
Private Sub cboEmployee_AfterUpdate()
txtstrAccess = DLookup("strAccess", "tblEmployees", _
"[lngEmpID]=" & Me.cboEmployee.Value)
Me!txtUserName = Me!cboEmployee.Column(1)
Me.txtPassword.SetFocus
End Sub
Private Sub cmdLogin_Click()
   If IsNull(Me.cboEmployee) Or Me.cboEmployee = "" Then
            MsgBox "Ban phai chon 'User Name' cua ban.", _
            vbCritical, "User name"
            Me.cboEmployee.SetFocus
        Exit Sub
    End If
    If IsNull(Me.txtPassword) Or Me.txtPassword = "" Then
            MsgBox "Ban phai nhap mat khau cua ban vao o 'Password'.", _
            vbCritical, "Nhap mat khau"
            Me.txtPassword.SetFocus
        Exit Sub
    End If
    If Me.txtPassword.Value = DLookup("strEmpPassword", "tblEmployees", _
    "[lngEmpID]=" & Me.cboEmployee.Value) Then
        lngMyEmpID = Me.cboEmployee.Value
        MsgBox "Ban da dang nhap thanh cong...", vbInformation, "Dang nhap..."
        DoCmd.OpenForm "frmMain"
        Me.Visible = False
        Else
        MsgBox "Mat khau khong dung.  Vui long nhap lai.", _
        vbExclamation, "Sai mat khau!"
        Me.txtPassword.SetFocus
    End If
    intLogonAttempts = intLogonAttempts + 1
    If intLogonAttempts > 2 Then
        MsgBox "Mat khau khong dung, chuong trinh se thoat. Vui long lien he voi Admin.", _
        vbCritical, "Mat khau!"
        Application.Quit
    End If
End Sub

Bạn tham khảo thêm file đính kèm nhe.

Ở đây tôi hơi "phân vân" một cái là theo thông lệ, password là có phân biệt hoa thường. Theo cách của bạn, thì bạn dùng hàm DLookup để tìm dò password. Nhưng mặc định, nếu bạn Option Compare Database là nó sẽ coi HOA như thường. Như vậy là chưa ổn.
Bạn nên đổi lại là Option Compare Binary.

Vấn đề tiếp theo là để password "mộc" như thế vẫn hơi "lộ liễu", bởi vì nếu tôi sử dụng một cái soft nào đó để tôi mở file Access ra, xem cái table là biết password liền, đúng không?

Password khi lưu cần phải mã hóa. Khi so sánh cũng nên so sánh trên các password đã mã hóa, như vậy mới tạm ổn.
 
Chào các anh chị, em cũng đnag học về access. Nhưng liệu em muốn tạo mục đăng nhập mà không dung VBA có được không anh chị ơi. Vì cái đo em chưa học nah. Anh chị nào giúp em với. em cám ơn nhiều
 
Với code trên nếu như mình muốn khi login thành công vào form main thì sẽ có menu bar kèm theo và mình sẽ phân quyền theo strAccess để menubar sẽ mờ đi một vài chức năng theo yêu cầu. Nhờ các bạn gợi ý cách làm.

Thank
 
Vấn đề tiếp theo là để password "mộc" như thế vẫn hơi "lộ liễu", bởi vì nếu tôi sử dụng một cái soft nào đó để tôi mở file Access ra, xem cái table là biết password liền, đúng không?

Password khi lưu cần phải mã hóa. Khi so sánh cũng nên so sánh trên các password đã mã hóa, như vậy mới tạm ổn.

2.) Đây là UDF mã hoá chuổi:

Mã:
Public Function Encode(vText As String)
    On Error GoTo ErrHandler
    Dim CurSpc As Integer
    Dim varLen As Integer
    Dim varChr As String
    Dim varFin As String
    varLen = Len(vText)
    Do While CurSpc <= varLen
        DoEvents
        CurSpc = CurSpc + 1
        varChr = Mid(vText, CurSpc, 1)
        Select Case varChr
            'lower case
            Case "a"
                varChr = "coe"
            Case "b"
                varChr = "wer"
            Case "c"
                varChr = "ibq"
            Case "d"
                varChr = "am7"
            Case "e"
                varChr = "pm1"
            Case "f"
                varChr = "mop"
            Case "g"
                varChr = "9v4"
            Case "h"
                varChr = "qu6"
            Case "i"
                varChr = "zxc"
            Case "j"
                varChr = "4mp"
            Case "k"
                varChr = "f88"
            Case "l"
                varChr = "qe2"
            Case "m"
                varChr = "vbn"
            Case "n"
                varChr = "qwt"
            Case "o"
                varChr = "pl5"
            Case "p"
                varChr = "13s"
            Case "q"
                varChr = "c%l"
            Case "r"
                varChr = "w$w"
            Case "s"
                varChr = "6a@"
            Case "t"
                varChr = "!2&"
            Case "u"
                varChr = "(=c"
            Case "v"
                varChr = "wvf"
            Case "w"
                varChr = "dp0"
            Case "x"
                varChr = "w$-"
            Case "y"
                varChr = "vn&"
            Case "z"
                varChr = "c*4"
            'numbers
            Case "1"
                varChr = "aq@"
            Case "2"
                varChr = "902"
            Case "3"
                varChr = "2.&"
            Case "4"
                varChr = "/w!"
            Case "5"
                varChr = "|pq"
            Case "6"
                varChr = "ml|"
            Case "7"
                varChr = "t'?"
            Case "8"
                varChr = ">^s"
            Case "9"
                varChr = "<s^"
            Case "0"
                varChr = ";&c"
            'caps
            Case "A"
                varChr = "$)c"
            Case "B"
                varChr = "-gt"
            Case "C"
                varChr = "|p*"
            Case "D"
                varChr = "1" & Chr(34) & "r"
            Case "E"
                varChr = "c>:"
            Case "F"
                varChr = "@+x"
            Case "G"
                varChr = "v^a"
            Case "H"
                varChr = "]eE"
            Case "I"
                varChr = "aP0"
            Case "J"
                varChr = "{=1"
            Case "K"
                varChr = "cWv"
            Case "L"
                varChr = "cDc"
            Case "M"
                varChr = "*,!"
            Case "N"
                varChr = "fW" & Chr(34)
            Case "O"
                varChr = ".?T"
            Case "P"
                varChr = "%<8"
            Case "Q"
                varChr = "@:a"
            Case "R"
                varChr = "&c$"
            Case "S"
                varChr = "WnY"
            Case "T"
                varChr = "{Sh"
            Case "U"
                varChr = "_%M"
            Case "V"
                varChr = "}'$"
            Case "W"
                varChr = "QlU"
            Case "X"
                varChr = "Im^"
            Case "Y"
                varChr = "l|P"
            Case "Z"
                varChr = ".>#"
            'Special characters
            Case "!"
                varChr = "\" & Chr(34) & "]"
            Case "@"
                varChr = "cY,"
            Case "#"
                varChr = "x%B"
            Case "$"
                varChr = "a*v"
            Case "%"
                varChr = "'&T"
            Case "^"
                varChr = ";%R"
            Case "&"
                varChr = "eG_"
            Case "*"
                varChr = "Z/e"
            Case "("
                varChr = "rG\"
            Case ")"
                varChr = "]*F"
            Case "_"
                varChr = "@B*"
            Case "-"
                varChr = "+Hc"
            Case "="
                varChr = "&|D"
            Case "+"
                varChr = "(:#"
            Case "["
                varChr = "SlW"
            Case "]"
                varChr = "'QB"
            Case "{"
                varChr = "{D>"
            Case "}"
                varChr = "+c%"
            Case ":"
                varChr = "(s:"
            Case ";"
                varChr = "^a("
            Case "'"
                varChr = "16."
            Case Chr(34)
                varChr = "s.*"
            Case ","
                varChr = "&?W"
            Case "."
                varChr = "GPQ"
            Case "<"
                varChr = "SK*"
            Case ">"
                varChr = "RL^"
            Case "/"
                varChr = "40C"
            Case "?"
                varChr = "?#9"
            Case "\"
                varChr = "_?/"
            Case "|"
                varChr = "(_@"
            Case " "
                varChr = "=#B"
        End Select
        varFin = varFin & varChr
        DoEvents
    Loop
    Encode = varFin
    Exit Function
ErrHandler:
    Dim ErrNum, ErrDesc, ErrSource
    ErrNum = Err.Number
    ErrDesc = Err.Description
    ErrSource = Err.Source
    MsgBox "Error# = " & ErrNum & vbCrLf & "Description = " & ErrDesc & vbCrLf & "Source = " & ErrSource, vbCritical + vbOKOnly, "Program Error!"
    Err.Clear
    Exit Function
End Function
2.) UDF chuyển chuổi đã mã hoá thành chuổi bình thường.

Mã:
Public Function DeCode(vText As String) As String
    On Error GoTo ErrHandler
    Dim CurSpc As Integer
    Dim varLen As Integer
    Dim varChr As String
    Dim varFin As String
    CurSpc = CurSpc + 1
    varLen = Len(vText)
    Do While CurSpc <= varLen
        DoEvents
        varChr = Mid(vText, CurSpc, 3)
        Select Case varChr
            'lower case
            Case "coe"
                varChr = "a"
            Case "wer"
                varChr = "b"
            Case "ibq"
                varChr = "c"
            Case "am7"
                varChr = "d"
            Case "pm1"
                varChr = "e"
            Case "mop"
                varChr = "f"
            Case "9v4"
                varChr = "g"
            Case "qu6"
                varChr = "h"
            Case "zxc"
                varChr = "i"
            Case "4mp"
                varChr = "j"
            Case "f88"
                varChr = "k"
            Case "qe2"
                varChr = "l"
            Case "vbn"
                varChr = "m"
            Case "qwt"
                varChr = "n"
            Case "pl5"
                varChr = "o"
            Case "13s"
                varChr = "p"
            Case "c%l"
                varChr = "q"
            Case "w$w"
                varChr = "r"
            Case "6a@"
                varChr = "s"
            Case "!2&"
                varChr = "t"
            Case "(=c"
                varChr = "u"
            Case "wvf"
                varChr = "v"
            Case "dp0"
                varChr = "w"
            Case "w$-"
                varChr = "x"
            Case "vn&"
                varChr = "y"
            Case "c*4"
                varChr = "z"
            'numbers
            Case "aq@"
                varChr = "1"
            Case "902"
                varChr = "2"
            Case "2.&"
                varChr = "3"
            Case "/w!"
                varChr = "4"
            Case "|pq"
                varChr = "5"
            Case "ml|"
                varChr = "6"
            Case "t'?"
                varChr = "7"
            Case ">^s"
                varChr = "8"
            Case "<s^"
                varChr = "9"
            Case ";&c"
                varChr = "0"
            'caps
            Case "$)c"
                varChr = "A"
            Case "-gt"
                varChr = "B"
            Case "|p*"
                varChr = "C"
            Case "1" & Chr(34) & "r"
                varChr = "D"
            Case "c>:"
                varChr = "E"
            Case "@+x"
                varChr = "F"
            Case "v^a"
                varChr = "G"
            Case "]eE"
                varChr = "H"
            Case "aP0"
                varChr = "I"
            Case "{=1"
                varChr = "J"
            Case "cWv"
                varChr = "K"
            Case "cDc"
                varChr = "L"
            Case "*,!"
                varChr = "M"
            Case "fW" & Chr(34)
                varChr = "N"
            Case ".?T"
                varChr = "O"
            Case "%<8"
                varChr = "P"
            Case "@:a"
                varChr = "Q"
            Case "&c$"
                varChr = "R"
            Case "WnY"
                varChr = "S"
            Case "{Sh"
                varChr = "T"
            Case "_%M"
                varChr = "U"
            Case "}'$"
                varChr = "V"
            Case "QlU"
                varChr = "W"
            Case "Im^"
                varChr = "X"
            Case "l|P"
                varChr = "Y"
            Case ".>#"
                varChr = "Z"
            'Special characters
            Case "\" & Chr(34) & "]"
                varChr = "!"
            Case "cY,"
                varChr = "@"
            Case "x%B"
                varChr = "#"
            Case "a*v"
                varChr = "$"
            Case "'&T"
                varChr = "%"
            Case ";%R"
                varChr = "^"
            Case "eG_"
                varChr = "&"
            Case "Z/e"
                varChr = "*"
            Case "rG\"
                varChr = "("
            Case "]*F"
                varChr = ")"
            Case "@B*"
                varChr = "_"
            Case "+Hc"
                varChr = "-"
            Case "&|D"
                varChr = "="
            Case "(:#"
                varChr = "+"
            Case "SlW"
                varChr = "["
            Case "'QB"
                varChr = "]"
            Case "{D>"
                varChr = "{"
            Case "+c%"
                varChr = "}"
            Case "(s:"
                varChr = ":"
            Case "^a("
                varChr = ";"
            Case "16."
                varChr = "'"
            Case "s.*"
                varChr = Chr(34)
            Case "&?W"
                varChr = ","
            Case "GPQ"
                varChr = "."
            Case "SK*"
                varChr = "<"
            Case "RL^"
                varChr = ">"
            Case "40C"
                varChr = "/"
            Case "?#9"
                varChr = "?"
            Case "_?/"
                varChr = "\"
            Case "(_@"
                varChr = "|"
            Case "=#B"
                varChr = " "
        End Select
        varFin = varFin & varChr
        CurSpc = CurSpc + 3
        DoEvents
    Loop
    DeCode = varFin
    Exit Function
ErrHandler:
    Dim ErrNum, ErrDesc, ErrSource
    ErrNum = Err.Number
    ErrDesc = Err.Description
    ErrSource = Err.Source
    MsgBox "Error# = " & ErrNum & vbCrLf & "Description = " & ErrDesc & vbCrLf & "Source = " & ErrSource, vbCritical + vbOKOnly, "Program Error!"
    Err.Clear
    Exit Function
End Function
Như vậy bạn có thể sử dụng 2 UDF này để thực hiện yêu cầu của bạn.

Lưu ý: Nó không hổ trợ kiểu gõ có dấu. Nếu muốn chữ có dấu bạn tự thêm nhé.
 
Lần chỉnh sửa cuối:
Với Formlogin đó thì OK rồi
 
Lần chỉnh sửa cuối:
Hỏi về login

Xin cho hỏi, nếu tạo bàng chứa Password như vậy thì người nào đó mở được bảng này thì biết hết password sao?
 
Xin cho hỏi, nếu tạo bàng chứa Password như vậy thì người nào đó mở được bảng này thì biết hết password sao?
Đây chỉ là ví dụ, còn việc sử dụng thì tùy biến, ví dụ mã hóa pass + csdl... Cho dù có mở cũng khó biết được.
 
mình có frm như sau .. sao mình ko thể liên kết tới access mong các bạn giúp mình sớm , mình đang cần ... lúc mình chạy chương trình bằng vb .. nó ko hiện frm ra ..


public partial class Login : DevComponents.DotNetBar.Office2007RibbonForm
{
public Login()
{
InitializeComponent();
}
#region "Biến cục bộ trong form"
public OleDbConnection objConnect;
private DataTable objDataTable;
private DataTable objDataTable1;


#endregion
#region "Tạo và hủy kết nối với database"
private void ketnoidata()
{
String chuoikn = "Provider = Microsoft.Jet.OLEDB.4.0 ;" +
"Data Source = Nhom8_CNTT 16GT" + Application.StartupPath + @"\C:\Users\NHAT-IT\Desktop\Nhom 8\Nhom8_CNTT 16GT\qlxm.mdb;";
objConnect = new OleDbConnection(chuoikn);
objConnect.Open(); // Mở kết nối
}
private void huyketnoidata()
{
objConnect.Close(); // Đóng kết nối
objConnect.Dispose(); // Giải phóng tài nguyên
objConnect = null; // Hủy đối tượng
}
#endregion
public bool CheckLogin(string name, string pass)
{
String chuoikn = "Provider = Microsoft.Jet.OLEDB.4.0 ;" +
"Data Source = Nhom8_CNTT 16GT" + Application.StartupPath + @"\C:\Users\NHAT-IT\Desktop\Nhom 8\Nhom8_CNTT 16GT\qlxm.mdb;";
objConnect = new OleDbConnection(chuoikn);
// Tạo Command
OleDbCommand cmd = new OleDbCommand("select * from Dang_Nhap where UserName='" + name + "' and PassWord='" + pass + "'", objConnect);
objConnect.Open(); // Mở kết nối
OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
objConnect.Close();
return true;
}
objConnect.Close();
return false;
}


private void buttonX2_Click(object sender, EventArgs e)
{
this.Close();
}


private void buttonX1_Click(object sender, EventArgs e)
{
if (CheckLogin(txt_user.Text, txt_pass.Text))
{
main frmmain = new main();
frmmain.Show();

}
else
MessageBox.Show("Đăng nhập thất bại", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
 
mình có frm như sau .. sao mình ko thể liên kết tới access mong các bạn giúp mình sớm , mình đang cần ... lúc mình chạy chương trình bằng vb .. nó ko hiện frm ra ..


public partial class Login : DevComponents.DotNetBar.Office2007RibbonForm
{
public Login()
{
InitializeComponent();
}
#region "Biến cục bộ trong form"
public OleDbConnection objConnect;
private DataTable objDataTable;
private DataTable objDataTable1;


#endregion
#region "Tạo và hủy kết nối với database"
private void ketnoidata()
{
String chuoikn = "Provider = Microsoft.Jet.OLEDB.4.0 ;" +
"Data Source = Nhom8_CNTT 16GT" + Application.StartupPath + @"\C:\Users\NHAT-IT\Desktop\Nhom 8\Nhom8_CNTT 16GT\qlxm.mdb;";
objConnect = new OleDbConnection(chuoikn);
objConnect.Open(); // Mở kết nối
}
private void huyketnoidata()
{
objConnect.Close(); // Đóng kết nối
objConnect.Dispose(); // Giải phóng tài nguyên
objConnect = null; // Hủy đối tượng
}
#endregion
public bool CheckLogin(string name, string pass)
{
String chuoikn = "Provider = Microsoft.Jet.OLEDB.4.0 ;" +
"Data Source = Nhom8_CNTT 16GT" + Application.StartupPath + @"\C:\Users\NHAT-IT\Desktop\Nhom 8\Nhom8_CNTT 16GT\qlxm.mdb;";
objConnect = new OleDbConnection(chuoikn);
// Tạo Command
OleDbCommand cmd = new OleDbCommand("select * from Dang_Nhap where UserName='" + name + "' and PassWord='" + pass + "'", objConnect);
objConnect.Open(); // Mở kết nối
OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
objConnect.Close();
return true;
}
objConnect.Close();
return false;
}


private void buttonX2_Click(object sender, EventArgs e)
{
this.Close();
}


private void buttonX1_Click(object sender, EventArgs e)
{
if (CheckLogin(txt_user.Text, txt_pass.Text))
{
main frmmain = new main();
frmmain.Show();

}
else
MessageBox.Show("Đăng nhập thất bại", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}

Nhảm hả, cái này người ta viết bằng C# , dùng vb chạy thế nào được mà form thì phải tạo chứ có code không thì làm ăn kiểu gì
Đó là chưa kể người ta dùng Components tùm lum kia,
 
Áp dụng 2 UDF này như nào ad. Có phải chỉ cần copy vào modul là dùng được phải không? Có cần gọi 2 hàm này ra không? Mình biết phải vận dụng 2 UDF này như nào mong add chỉ giúp. Thank in advance
 
Web KT
Back
Top Bottom