首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

权限登陆解决思路

2011-12-26 
权限登陆我做的是酒店管理系统我的SQL里有一张表里面有不同的用户如:顾客,老板,员工而我的版面是用TREEVIE

权限登陆
我做的是酒店管理系统
我的SQL里有一张表里面有不同的用户如:顾客,老板,员工
而我的版面是用TREEVIEW做的树(里面有子结点)里面集成拉顾客,老板和员工的操作.我想不同类型用户登陆后只能在自己的范围内操作,其它无法操作如点击就显示"您没有权限对其操作"
往各位帮帮忙,我的系统就卡在这拉.在线等.急

[解决办法]
用这个验证一下,确定一个权限值 就可以分析了

VB.NET code
Imports System.Data.SqlClientPublic 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 Ifss:        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 SubEnd 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 

热点排行