ช่วยดูโค้ดให้หนอ่ยค่ะ
กระทู้เก่าบอร์ด อ.Yeadram

 1,468   5
URL.หัวข้อ / URL
ช่วยดูโค้ดให้หนอ่ยค่ะ

พอดีทำ loginใน acsees
มีตาราง tbl_User
ประกอบด้วยฟิล User_name, User_pass , User_Admin
แล้วเขียนโค้ดตรวจสอบ username and password ดังนี้ค่ะ
Private Sub cmdOK_Click()
          Dim stDocName As String, stLinkCriteria As String
          Dim rst As Recordset, dbs As Database
          Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT*FROM tbl_User")

               If rst!User_Name = Text11.Value And rst!User_Pass = Text13.Value Then
                      UserLogin = rst!User_Name
                      BelongToAdmin = rst!User_Admin
                 DoCmd.Close
                 stDocName = "Frm_Manu"
                 DoCmd.OpenForm stDocName, , , stLinkCriteria
               Else
                               Beep
                      MsgBox "Username and Password Invoid", vbOKOnly, "Warning"
                     
               End If
End Sub

แต่ว่าพอใส่ username and password ในหน้าฟอร์มมันจะขึ้นแต่ว่า"Username and Password Invoid"
ไม่ทราบว่าเขียนตรงไหนผิดค่ะ

5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R04502
If rst!User_Name = Text11 And rst!User_Pass = Text13 Then
ที่Text11 และText13 ไม่ต้องมี .Value ครับ(ให้ Text11 และText13 รับค่าเป็น string ได้ )
2 @R04503
มันสามารถลิงค์ฟอร์มได้แล้วค่ะ ท่าเราใส่username and password ถูก
แต่ตอนนี้ท่าเราลองใส่ผิดมันกลับไม่แสดง msg box ฟ้องว่า username and password invoid โค้ดอันเดิมค่ะ ไม่ทราบว่าเป็นที่อะไรค่ะ
3 @R04504

Private Sub cmdOK_Click()
          Dim stDocName As String, stLinkCriteria As String
          Dim rst As Recordset, dbs As Database
          Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM Tbl_User   WHERE User_Name='" & Text11.Value & "'" & " and User_Pass='" & Text13.Value & "'")

               If rst!User_Name = Text11 And rst!User_Pass = Text13 Then
                      UserLogin = rst!User_Name
                     
                      BelongToAdmin = rst!User_Admin
                     
                 DoCmd.Close
                 
                 stDocName = "Frm_Manu"
                 
                 DoCmd.OpenForm stDocName, , , stLinkCriteria
                 
               Else
              
               Beep
                      MsgBox "Username and Password Invoid", "Warning"
                     
               End If
End Sub

มันจะ error บันทัดนี้ค่ะ
If rst!User_Name = Text11 And rst!User_Pass = Text13 Then
4 @R04509
Private Sub cmdOK_Click()
UserLogin=""
Dim rst As Recordset, dbs As Database
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM Tbl_User WHERE User_Name='" & Text11 & "'" & " and User_Pass='" & Text13 & "'")

' DAO มันใช้เหมือนกันหรือเปล่าไม่แน่ใจและไม่ได้ลอง

if rst.recordcount >0 then
UserLogin = Text11
BelongToAdmin = Text13
else
msgbox "User Name or Password incorrect"
end if

rst.close
set rst=nothing

if Userlogin<>"" then
DoCmd.OpenForm "Frm_Manu"
docmd.close acform, me.name
exit sub
end if
quit

End sub
5 @R04512
ขอบคุณมากๆๆๆเลยค่ะ yeadram
ได้แล้วค่ะ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3537s