VB中登录用户的权限怎么设置
登录一个VB系统,一般人只能使用基本的功能,只有系统管理员才可以使用所有的功能模块,这个要怎么设置呀?...
登录一个VB系统,一般人只能使用基本的功能,只有系统管理员才可以使用所有的功能模块,这个要怎么设置呀?
展开
4个回答
推荐于2018-03-26
展开全部
在数据库中的用户表里增加一个属性,暂时叫它"权限"吧.如经理的用户名是JL,密码是PWD,权限是1,则在登录的时候,要跟据用户名和密码来确定权限值,然后跟据权限值来进入不同的窗体.
(注:权限设置例子如:经理---权限:1 管理员---权限:2...)
如此即可!
(注:权限设置例子如:经理---权限:1 管理员---权限:2...)
如此即可!
2013-06-27
展开全部
这个是我的登陆权限代码 希望对你有帮助
Private Sub CmdLogin_Click()
Dim SqlStr As String
On Error GoTo lerr
'If Trim(CmbUser.Text) = "" Or Trim(TxtPwd.Text) = "" Then
'MsgBox "用户名或密码不能为空!请重新输入!", vbExclamation, "错误"
'Exit Sub
'End If
If ConnMain.State = 0 Then
Call SQLConnect(ConnMain, Trim(TxtSqlName.Text), Trim(TxtSqlUser.Text), Trim(TxtSqlPwd.Text), Trim(TxtSqlDB.Text))
End If
SqlStr = "select UserPwd,UserQX from TUser where UserName='" & CmbUser.Text & "'"
If rs.State <> 0 Then rs.Close
rs.Open SqlStr, ConnMain, 1, 1
If Not rs.EOF Then
If Trim(rs("UserPwd")) = Trim(TxtPwd.Text) Then
Call SaveServer(Trim(TxtSqlName.Text), Trim(TxtSqlUser.Text), Trim(TxtSqlPwd.Text), Trim(TxtSqlDB.Text))
MsgBox "登陆成功!", vbInformation, "成功"
'BBUser = CmbUser.Text
BBUser = CmbUser.Text
If rs!UserQX = "系统管理员" Then
MDIFormMain.NmSys.Visible = True
ElseIf rs!UserQX = "仓库管理员" Then
MDIFormMain.NmSys.Visible = False
ElseIf rs!UserQX = "车间管理员" Then
MDIFormMain.NmSys.Visible = False
MDIFormMain.NmDepot.Visible = False
End If
'MDIFormMain.Show
rs.Close
Unload Me
Exit Sub
Else
MsgBox "密码错误!请重新输入!", vbInformation, "错误"
TxtPwd.Text = ""
TxtPwd.SetFocus
Exit Sub
End If
Else
MsgBox "用户名不存在!请与管理员联系!", vbInformation, "错误"
CmbUser.Text = ""
TxtPwd.Text = ""
CmbUser.SetFocus
End If
rs.Close
ConnMain.Close
Set rs = Nothing
Exit Sub
lerr:
If rs.State <> 0 Then rs.Close
MsgBox "1与服务器连接失败!", vbInformation, "失败"
End Sub
Private Sub CmdLogin_Click()
Dim SqlStr As String
On Error GoTo lerr
'If Trim(CmbUser.Text) = "" Or Trim(TxtPwd.Text) = "" Then
'MsgBox "用户名或密码不能为空!请重新输入!", vbExclamation, "错误"
'Exit Sub
'End If
If ConnMain.State = 0 Then
Call SQLConnect(ConnMain, Trim(TxtSqlName.Text), Trim(TxtSqlUser.Text), Trim(TxtSqlPwd.Text), Trim(TxtSqlDB.Text))
End If
SqlStr = "select UserPwd,UserQX from TUser where UserName='" & CmbUser.Text & "'"
If rs.State <> 0 Then rs.Close
rs.Open SqlStr, ConnMain, 1, 1
If Not rs.EOF Then
If Trim(rs("UserPwd")) = Trim(TxtPwd.Text) Then
Call SaveServer(Trim(TxtSqlName.Text), Trim(TxtSqlUser.Text), Trim(TxtSqlPwd.Text), Trim(TxtSqlDB.Text))
MsgBox "登陆成功!", vbInformation, "成功"
'BBUser = CmbUser.Text
BBUser = CmbUser.Text
If rs!UserQX = "系统管理员" Then
MDIFormMain.NmSys.Visible = True
ElseIf rs!UserQX = "仓库管理员" Then
MDIFormMain.NmSys.Visible = False
ElseIf rs!UserQX = "车间管理员" Then
MDIFormMain.NmSys.Visible = False
MDIFormMain.NmDepot.Visible = False
End If
'MDIFormMain.Show
rs.Close
Unload Me
Exit Sub
Else
MsgBox "密码错误!请重新输入!", vbInformation, "错误"
TxtPwd.Text = ""
TxtPwd.SetFocus
Exit Sub
End If
Else
MsgBox "用户名不存在!请与管理员联系!", vbInformation, "错误"
CmbUser.Text = ""
TxtPwd.Text = ""
CmbUser.SetFocus
End If
rs.Close
ConnMain.Close
Set rs = Nothing
Exit Sub
lerr:
If rs.State <> 0 Then rs.Close
MsgBox "1与服务器连接失败!", vbInformation, "失败"
End Sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-27
展开全部
我从asp上给你引用一点,建立一个用户表,每个不同的用户有不同的权限值越小标志权限越大,那么在调用数据或者窗体初始化时,如果这个窗体的权限值低于访问用户的权限值,则数据不能访问,或者窗体不能调出!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-27
展开全部
验证身份后用控件的可见属性不就完了么。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询