|
本帖最后由 roych 于 2013-1-27 12:46 编辑
新建表:
用户名【文本】、登录时间【常规时间】、退出时间【常规时间】、次数【默认值为0,长整型】、是否允许登录【是否,默认为否】
**********************************************************************************
声明:
大体代码入下:暂不做实例和测试,需要的话请自行建立好表和登录界面上传,俺再进行调试。
**********************************************************************************
在登录模块里写上:- Sub test()
- Dim str As String
- str = "select *,count([用户名]) As 统计次数 from 用户登录表 where 用户名='" & Forms!登录窗体!用户名 & "' and " _
- & "DateSerial(Year([登录时间]), Month([登录时间]), Day([登录时间])) = " & Date
- Dim rst As New ADODB.Recordset
- rst.Open str, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
- '如果当天没有登录记录则新增一条,否则就退出。
- If rst("统计次数") = 0 Then
- rst.AddNew
- rst("用户名") = Forms!登录窗体!用户名
- rst("退出时间") = Now()
- Else
- MsgBox "您今天已登录过,请明天再来^_^", vbInformation, "提示"
- End If
- rst.Close
- Set rst = Nothing
- End Sub
复制代码 在退出按钮里写入更新事件【如果只是限制每个用户每天只登录一次,上面的代码已经足够,不过为了了解登出情况,写下也好】:- Sub test2()
- Dim str As String
- str = "select * from 用户登录表 where 用户名='" & Forms!登录窗体!用户名 & "' and " _
- & "DateSerial(Year([登录时间]), Month([登录时间]), Day([登录时间])) = " & Date
- Dim rst As New ADODB.Recordset
- rst.Open str, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
- rst("退出时间") = Now()
- rst("是否允许登录") = False
- rst("登录次数") = 1
- rst.Update
- rst.Close
- Set rst = Nothing
- End Sub
复制代码 |
|