-
Buộc user chờ 15 phút sau khi đăng nhập sai 5 lần
Noname > 24-08-10, 04:47 PM
Question :Thấy các diễn đàn chỉ cho đăng nhạp 5 lần,nếu sai thì 15 phút sau mới cho đang nhập lại.Thế thì mình nghĩ ra ý tương rằng,cái này chúng ta có thể áp dụng trong Form đăng nhập được không.Điều kiện:
Đăng nhập sai 5 lần thì dù có đăng nhập đúng đi chăng nữa cũng không vào đuợc CSDL.
Reply :
Xin giới thiệu bạn hàm Sleep( số miligiây) dùng để delay chương trình
Để dùng hàm nay, bạn phải khai báo API.
Tạo 1 module và khai báo API sau:
Mã:Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Trong form đăng nhập, bạn tạo 1 biến để đếm. Sau mỗi lần nhập pass nó sẽ đếm lên 1.
Mã:dem=dem+1
If Dem mod 5 =0 then
MsgBox "Sai Pass 5 lan, ban phai cho 15 phut moi duoc dang nhap"
Sleep (1800000)
End If
---------------------------------------------------------------------
Bạn cũng có thể lợi dụng timer của Form ( set interval 1000 )để đếm giờ bằng cách tạo 1 biến demgiay. Khi nhập pass sai lần thứ 5, thì demgiay=0.
Trong sự kiện timer , demgiay =demgiay +1
Như vậy. bắt đầu kiểm tra pass, bạn đặt điều kiện:
Mã:If (dem mod 5 =0 ) and (demgiay < 180 =0) then
msgbox " bạn nhap sai pass 5 lan, ban phai doi 15 phut moi nhap lai duoc, thoi gian con lai : " & 180 - demgiay & "giay"
else
' doan code kiem tra pass
dem = dem +1
demgiay=0
End If -
RE: Buộc user chờ 15 phút sau khi đăng nhập sai 5 lần
htclub > 25-08-10, 03:08 PM
tui không rành về access nhưng theo tui nghĩ hạn chế 15 phút như thế thì chỉ cần tắt đi vào lại là ok .
-
RE: Buộc user chờ 15 phút sau khi đăng nhập sai 5 lần
Noname > 25-08-10, 03:17 PM
(25-08-10, 03:08 PM)htclub Đã viết: tui không rành về access nhưng theo tui nghĩ hạn chế 15 phút như thế thì chỉ cần tắt đi vào lại là ok .
Vậy để mình nghiên cứu sao để khi user đăng nhập, nó ghi 1 biến vào registry hoặc 1 table nào đó. Rồi so sánh với table đó!
Hàm trên chỉ là delay form làm treo hệ thống trong 15 phút thôi!