ユーザーがログインできるように、SQL データベースからデータを取得するログイン ページを作成しました。また、大文字と小文字を区別し、ユーザーが間違ったログイン情報を 3 回以上入力したときにアプリを終了するように少し追加しました。
ただし、CompanyA 用に 1 つのテーブルと CompanyB 用に 1 つのテーブルがあります。これらのテーブルの両方からデータを選択し、ユーザーがログインできるようにしたいと考えています。
また、CompanyA は Page1 に、CompanyB は Page2 に移動します。
以下は、1 つのテーブルから選択して 1 つのページに移動する元のコードです。上記の質問に答えるために、このコードを適応させたいと思います。何か案は?
Try
Dim objconnection As SqlConnection = New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Cara\Documents\Visual Studio 2012\Projects\Online Portal Solutions\Online Portal Solutions\Online Portal Solutions Database.mdf;Integrated Security=True")
objconnection.Open()
Dim SelectStmt As String = "SELECT * FROM [ACustomerLogIn] WHERE Username='" & txt_cusername.Text & "' COLLATE SQL_Latin1_General_CP1_CS_AS AND Password='" & txt_cpassword.Text & "' COLLATE SQL_Latin1_General_CP1_CS_AS ;"
Dim objcommand As SqlCommand = New SqlCommand(SelectStmt, objconnection)
Dim reader As SqlDataReader = objcommand.ExecuteReader
If reader.Read Then
If txt_cpassword.Text <> reader("Password").ToString And txt_cusername.Text <> reader("Username").ToString Then
frm_2custhome.Show()
Me.Hide()
txt_cusername.Clear()
txt_cpassword.Clear()
End If
Else
Static count As Integer = 0
Dim prompt As DialogResult = MessageBox.Show("Invaild Username or Password.", "Login Error",
MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning)
Select Case prompt
Case Windows.Forms.DialogResult.Retry
txt_cusername.Text = ""
txt_cpassword.Text = ""
count += 1
If count = 3 Then
MessageBox.Show("High value of failed login attempts." & vbCrLf & "Application will be terminated for security reasons.", "Error",
MessageBoxButtons.OK, MessageBoxIcon.Stop)
End
End If
Case Windows.Forms.DialogResult.Cancel
Application.Exit()
End Select
End If
Catch ex As Exception
End Try