0

参考までに、AuthorityとUsersのテーブルがあります。私のUsersテーブルには、user_id、username、password、authority_idの4つの列があり、Authorityテーブルには、authority_id、authority_levelの2つの列があります。

私のログインフォームは、ユーザーにユーザー名とパスワードの入力を求めます。正しいパラメータを指定すると、それがadmin = 1、nurse = 2、またはdoctor=2であるかどうかをユーザーが検証する必要があります。

これが私がこれまでに試したことです:

Private Sub btnLogin_Click(sender As System.Object, e As System.EventArgs) Handles btnLogin.Click

    If txtUsername.Text = "" Or txtPassword.Text = "" Then
        MsgBox("Enter UserName and Password Moron")
    Else
        'SQL Query To Get The Details
        Dim myAdapter As New MySqlDataAdapter
        Dim sqlquerry = "Select * From users where username = '" + txtUsername.Text + "' And password= '" + txtPassword.Text + "'"
        Dim myCommand As New MySqlCommand()
        myCommand.Connection = SQLConnection
        myCommand.CommandText = sqlquerry
        'Starting The Query
        myAdapter.SelectCommand = myCommand
        Dim mydata As MySqlDataReader
        mydata = myCommand.ExecuteReader
        'To check the Username and password and to validate the login a
        If mydata.HasRows = 0 Then
            MsgBox("Invalid Login")
        Else
            MsgBox("Welcome " + txtUsername.Text + "!")
            If authority Then
                frmMain.Show()
            Else
                frmMainNurse.Show()
            End If
            Me.Hide()
        End If
    End If
End Sub

この行に何かを追加していないことに注意してください。

If authority Then

vb.netでそれを行う方法がわかりません。ですから、誰かがこれを行う方法を知っているなら、私はあなたの助けに大いに感謝します。ありがとう。

4

1 に答える 1

0

あなたの他の部分でこれを行います

Else
    Dim authorityid = 0
    While mydata.Read()
        authorityid = mydata.GetInt32("authority_id")   
    End While
    MsgBox("Welcome " + txtUsername.Text + "!")
    If authorityid = 1 Then
       frmMain.Show()
    Else
       frmMainNurse.Show()
    End If
    Me.Hide()
End If
于 2013-01-02T18:53:06.013 に答える