Imports MySql.Data.MySqlClient
Imports System.Data
Public Class login
Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click
Dim objConn As New MySqlConnection
Dim objCmd As New MySqlCommand
Dim strConnString, strSQL As String
strConnString = "Server=127.0.0.1;User Id=root; Password=123456; Database=test; Pooling=false"
objConn.ConnectionString = strConnString
objConn.Open()
Dim intNumRows As Integer
strSQL = "SELECT COUNT(*) FROM member WHERE user = '" & Me.txtUsername.Text & "' AND pass = '" & Me.txtPassword.Text & "'"
objCmd = New MySqlCommand(strSQL, objConn)
intNumRows = objCmd.ExecuteScalar()
If intNumRows > 0 Then
Dim frm As New frmMain
frm.Show()
Me.Hide()
Else
MessageBox.Show("Username หรือ Password ผิด")
End If
objConn.Close()
objConn = Nothing
End Sub
จากข้างบน เป็นcode login ครับ นำมาจากเว็บนี้ล่ะครับ ตอนนี้ ใช่งานได้แล้วครับ แต่ผมอยากเพิ่มเงื่อไข ใหม่ คือ ให้เข้าได้เฉพราะ user ที่มี status =2 เท่านั้น ถ้า user มี status =1 ให้ขึ้นข้อความ "ONLY ADMIN" ถ้า user มี status = 2 ให้เปิด form = frmMain ครับ
status = 1 คือ member เท่าไป
status = 2 คือ admin ครับ
ปัญหาคือ ผม ไม่รู้จะเพิ่มเงื่อไข อย่างไร ลองเพิ่มดูหลายวิธี โดยเพิ่ม if เข้าไปมันก็ไม่ได้ เลยอยากจะให้ท่านผู้รู้ ช้วยกัน บอกว คำสั่ง หน่อยนะครับ ว่าจะเพิ่ม ยังไง ตรงไไหน ครับ
If intNumRows > 0 Then
If strSQL = "SELECT COUNT(*) FROM member WHERE user = '" & 1 & "'" Then
MessageBox.Show("ONLY ADMIN")
Application.Exit()
Else
Dim frm As New frmMain
frm.Show()
Me.Hide()
End If
ส่วน ค่า status นั้น ผมได้ เซ็ต กับ user ไว้เรียบร้อยแล้วนะครับ
ขอบคุณครับ
Tag : .NET, MySQL, Ms SQL Server 2005, Ms SQL Server 2008, Ms SQL Server 2012, VB.NET
Date :
2012-09-10 16:42:19
By :
Alicai Florence
View :
1150
Reply :
2
No. 1
Guest
แก้ไขในส่วนที่ผมแก้เองครับ Code (VB.NET)
If intNumRows > 0 Then
If strSQL = "SELECT COUNT(*) FROM member WHERE status = '" & 1 & "'" Then
MessageBox.Show("Username หรือ Password ผิด")
Application.Exit()
Else
Dim frm As New frmMain
frm.Show()
Me.Hide()
End If
If intNumRows > 0 Then
If strSQL = "SELECT COUNT(*) FROM member WHERE status = '" & 1 & "'" Then
MessageBox.Show("ONLY ADMIN")
Application.Exit()
Else
Dim frm As New frmMain
frm.Show()
Me.Hide()
End If