权限登陆解决思路
权限登陆
我做的是酒店管理系统
我的SQL里有一张表里面有不同的用户如:顾客,老板,员工
而我的版面是用TREEVIEW做的树(里面有子结点)里面集成拉顾客,老板和员工的操作.我想不同类型用户登陆后只能在自己的范围内操作,其它无法操作如点击就显示"您没有权限对其操作"
往各位帮帮忙,我的系统就卡在这拉.在线等.急
------解决方案--------------------
用这个验证一下,确定一个权限值 就可以分析了
我做的是酒店管理系统
我的SQL里有一张表里面有不同的用户如:顾客,老板,员工
而我的版面是用TREEVIEW做的树(里面有子结点)里面集成拉顾客,老板和员工的操作.我想不同类型用户登陆后只能在自己的范围内操作,其它无法操作如点击就显示"您没有权限对其操作"
往各位帮帮忙,我的系统就卡在这拉.在线等.急
------解决方案--------------------
用这个验证一下,确定一个权限值 就可以分析了
- VB.NET code
Imports System.Data.SqlClient Public Class frmlogin Dim i As Integer = 0 Dim constr1 As String = "User ID=sa;pwd=a;Initial Catalog=SaleCD;Data Source=(local)" '定义一个变量,连接字符串 Dim sqlstr1 As String = "" Dim mycon1 As New SqlConnection(constr1) '定义一个变量,为一个连接对象 Dim mycom1 As New SqlCommand(sqlstr1, mycon1) '定义一个变量,为命令对象 Dim myReader1 As SqlDataReader '定义一个变量,阅读器 Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click If txtUsename.Text = "" Or txtPassword.Text = "" Then MsgBox("请输入用户名和密码") Exit Sub End If sqlstr1 = "select * from mgpep where usernameID='" & txtUsename.Text & "' and passwordID='" & txtPassword.Text & "'" '定义一个变量,SQL语句 mycon1.Open() '重新打开这个联接 myReader1 = mycom1.ExecuteReader '第二次把这个命令的连接送入阅读器 If myReader1.VisibleFieldCount = 0 Then MsgBox("密码不对请重新输入!") Exit Sub End If myReader1.Read() '阅读器重新使用read方法 On Error GoTo ss If myReader1(0) > 0 Then frmMagementMain.GBmagemetPeple.Visible = True sqlstr1 = "select * from mgpep" If mycon1.State = 1 Then mycon1.Close() End If mycon1.Open() myReader1 = mycom1.ExecuteReader '把这个命令的连接送入阅读器 Dim userIDsys(myReader1.VisibleFieldCount - 1, 2) 'ReDim userIDsys(10, 2) Dim k As Integer = 0 While myReader1.Read frmMagementMain.CmbUser.Items.Add(myReader1(0)) For i = 0 To 2 userIDsys(k, i) = myReader1.Item(i) Next k = k + 1 End While MsgBox("已经成功登录!") mycon1.Close() Me.Close() Exit Sub Else MsgBox("您没有权限登录!") mycon1.Close() Me.Close() Exit Sub End If ss: MsgBox("您没有权限登录!") Me.Close() End Sub Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click Me.Close() End Sub End Class
------解决方案--------------------
1.在数据库内制作一个权限表格
2.登陆后,取出相应登陆人的权限
3.在下面方法内加入权限判断
- VB.NET code
Dim quanxian As Integer Private Sub TreeView1_NodeMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseClick If e.Node.Index = 0 Then If quanxian = 0 Then Else End If If quanxian = 1 Then Else End If '... ... End If If e.Node.Index = 1 Then If quanxian = 0 Then Else End If If quanxian = 1 Then Else End If '... ... End If '... ... End Sub