กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

17 เม.ย. 63 , 12:06:07
อ่าน 319 ครั้ง

naekkhung

บังคับให้ User ตั้งรหัสผ่านตัวอักษร 8 ตัว โดยต้องมีตัวอักษรกับตัวเลข  รวมกันได้ 8 ตัวอักษร ต้องทำยังไงครับ

 

17 เม.ย. 63 , 15:59:18
ตอบกลับ #1

สันติสุข

: กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้
« ตอบกลับ #1 เมื่อ: 17 เม.ย. 63 , 15:59:18 »
ที่ BeforeUpdate event procedure ของเท็กซ์บ็อกซ์ที่ใส่รหัสผ่าน ให้ใส่โค้ด

If     Not(nz(Me.ชื่อเท็กซ์บ็อกซ์รหัสผ่าน) like "[A-Z0-9][A-Z0-9][A-Z0-9][A-Z0-9][A-Z0-9][A-Z0-9][A-Z0-9][A-Z0-9]") _
Or   Not(nz(Me.ชื่อเท็กซ์บ็อกซ์รหัสผ่าน) like "*[A-Z]*") _
Or   Not(nz(Me.ชื่อเท็กซ์บ็อกซ์รหัสผ่าน) like "*[0-9]*") Then
   Cancel = True
   MsgBox "รหัสผ่านต้องเป็นตัวอักษรภาษาอังกฤษผสมตัวเลขให้ได้ความยาว 8 ตัวอักษร"
End If
« แก้ไขครั้งสุดท้าย: 17 เม.ย. 63 , 17:26:59 โดย สันติสุข »
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

17 เม.ย. 63 , 16:20:28
ตอบกลับ #2

naekkhung

: กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้
« ตอบกลับ #2 เมื่อ: 17 เม.ย. 63 , 16:20:28 »
ขอบคุณอ.สันติสุขมากครับ

 

23 เม.ย. 63 , 13:52:12
ตอบกลับ #3

naekkhung

: กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้
« ตอบกลับ #3 เมื่อ: 23 เม.ย. 63 , 13:52:12 »
อ.สันติสุข ขอถามเพิ่มครับถ้าเราจะบังคับให้มีอักขระพิเศษด้วยต้องทำยังไงครับ

 

23 เม.ย. 63 , 17:21:56
ตอบกลับ #4

สันติสุข

: กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้
« ตอบกลับ #4 เมื่อ: 23 เม.ย. 63 , 17:21:56 »
ใส่ function procedure ที่ตรวจข้อความ T (ในที่นี้หมายถึง รหัสผ่าน) ข้างล่างนี้ ลงใน Module ที่มีอยู่แล้ว หรือสร้างใหม่ก็ได้  ถ้าตรวจสอบผ่าน ก็แปลว่า รหัสผ่านนั้นครบเงื่อนไข 4 ข้อดังนี้ 1.ความยาว 8 ตัวอักษร 2.มีตัวเลข 0-9 3.มีตัวอักษร a-z, A-Z 4.มีตัวอักษรพิเศษ
โค๊ด: [Select]
Public Function IsValidPSW(T As String) As Boolean

Dim II As Integer
Dim IsNum As Boolean, IsChr As Boolean, IsSpc As Boolean

If Len(์T) <> 8 Then IsValidPSW = False: Exit Function

IsNum = False: IsChr = False: IsSpc = False
For II = 1 To 8
    Select Case Asc(Mid(T, II, 1))
        Case 48 To 57: IsNum = True
        Case 65 To 90, 97 To 122: IsChr = True
        Case 33 To 47, 58 To 64, 91 To 96, 123 To 126: IsSpc = True
        Case Else: IsValidPSW = False: Exit Function
    End Select
Next II
IsValidPSW = IsNum And IsChr And IsSpc
End Function

เวลาจะตรวจสอบก็เขียนว่า
If Not IsValidPSW(nz(Me.ชื่อเท็กซ์บ็อกซ์รหัสผ่าน)) then
   Cancel = True
   MsgBox "รหัสผ่านต้องเป็นตัวอักษรภาษาอังกฤษผสมตัวเลขและอักขระพิเศษให้ได้ความยาว 8 ตัวอักษร"
End If
« แก้ไขครั้งสุดท้าย: 23 เม.ย. 63 , 22:58:14 โดย สันติสุข »
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mbbrid

23 เม.ย. 63 , 18:57:44
ตอบกลับ #5

naekkhung

: กำหนดให้ user ตั้งรหัสผ่านตามที่กำหนดไว้
« ตอบกลับ #5 เมื่อ: 23 เม.ย. 63 , 18:57:44 »
ขอบพระคุณอาจารย์มากๆครับ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย