Protected Sub LoginUser()
dt = New DataTable
dt = DataAccess.DataRead(StrQuery.LoginUser(txtUsername.Text.Trim, txtPassword.Text.Trim))
If dt.Rows.Count = 1 Then
If DecryptPassword() = True Then
Response.Cookies("userID").Value = dt.Rows(0).Item("userID")
Dim userlevel As Integer = dt.Rows(0).Item("userLevelID")
Response.Cookies("UserLevel").Value = dt.Rows(0).Item("userLevelID")
Response.Cookies("TypeTsr").Value = dt.Rows(0).Item("TypeTsr")
Response.Cookies("Extension").Value = dt.Rows(0).Item("Exten")
Response.Cookies("IpAsterisk").Value = dt.Rows(0).Item("ipAsterisk")
ChkLogin.UpdateUserOnline(dt.Rows(0).Item("userID"), "True")
Session("userID") = dt.Rows(0).Item("userID")
'-----สำหรับ chk การ Login ของแต่ละ User ต่อวัน-------
If ChkTblLogIn(dt.Rows(0).Item("userID")) = True Then
InsertLogIn()
'DataAccess.DataWrite(StrQuery.UpdateTblUserLogin(1, Request.Cookies("userID").Value))
End If
'-----End-------
Response.Redirect("~/Modules/Sale/Index/frmIndex.aspx")
Else
If Session("NumUser") Is Nothing Then
Session("NumUser") = 4
MsgBox("password ของคุณไม่ถูกต้อง คุณสามารถ Login ได้อีก " & Session("NumUser") & " ครั้ง")
Else
If Session("NumUser") < 2 Then
ChkLogin.UpdateUserCancel(dt.Rows(0).Item("userID"))
MsgBox("username ของท่านถูกยกเลิก โปรดติดต่อ Project Lead ")
Else
Session("NumUser") -= 1
MsgBox("password ของคุณไม่ถูกต้อง คุณสามารถ Login ได้อีก " & Session("NumUser") & " ครั้ง")
End If
End If
End If
ElseIf dt.Rows.Count > 1 Then
MsgBox("username ของคุณมีซ้ำกันในระบบ กรุณาแจ้งทาง IT")
Else
MsgBox("ไม่พบ username")
End If
End Sub
Protected Sub MsgBox(ByVal strMassage As String)
Me.ClientScript.RegisterClientScriptBlock(Me.GetType(), "script", "alert('" & strMassage & "');", True)
End Sub
Protected Function ChkTblLogIn(ByVal userID As String) As Boolean
dt = New DataTable
dt = DataAccess.DataRead(StrQuery.SelectTblUserLogIn(userID))
If dt.Rows.Count > 0 Then
Return False
Else
Return True
End If
End Function
Protected Function DecryptPassword() As Boolean
Dim str1 As String = proxy.DecrytePassword(dt.Rows(0).Item("UserPassword"))
Dim strpass1 As String = txtPassword.Text.Trim
If strpass1 = str1.Trim Then
Return True
Else
Return False
End If
End Function
Protected Sub SaveLogIP(ByVal userID As String)
com = New SqlCommand(StrQuery.InsertTblUserLogIP, Conn)
With com
.Parameters.Clear()
.Parameters.Add("@userID", SqlDbType.VarChar).Value = userID
.Parameters.Add("@ComIP", SqlDbType.VarChar).Value = Request.ServerVariables("REMOTE_ADDR")
.Parameters.Add("@ComName", SqlDbType.VarChar).Value = ""
.Parameters.Add("@ComMacAddr", SqlDbType.VarChar).Value = ""
.ExecuteNonQuery()
End With
End Sub
Public Sub CheckConnectionState()
If Conn.State = ConnectionState.Open Then
Conn.Close()
Else
Conn.Open()
End If
End Sub
Protected Sub InsertLogIn()
CheckConnectionState()
com = New SqlCommand(StrQuery.InsertTblUserLogIn, Conn)
With com
.Parameters.Clear()
.Parameters.Add("@UserID", SqlDbType.VarChar).Value = Request.Cookies("userID").Value
.Parameters.Add("@IPLogin", SqlDbType.VarChar).Value = Request.ServerVariables("REMOTE_ADDR")
.ExecuteNonQuery()
End With
'com = New SqlCommand(StrQuery.InsertTblUserLogIn2, Conn)
'With com
' .Parameters.Clear()
' .Parameters.Add("@UserID", SqlDbType.VarChar).Value = Request.Cookies("userID").Value
' .Parameters.Add("@IPLogin", SqlDbType.VarChar).Value = Request.ServerVariables("REMOTE_ADDR")
' .ExecuteNonQuery()
'End With
End Sub
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Request.Cookies("userID") IsNot Nothing Then
PlLogin.Visible = False
Else
PlLogin.Visible = True
End If
End Sub
End Class
Tag : ASP, Ms SQL Server 2008, Crystal Report, Web (ASP.NET), VB.NET, VS 2010 (.NET 4.x)
Protected Function DecryptPassword() As Boolean
'Dim str1 As String = proxy.DecrytePassword(dt.Rows(0).Item("UserPassword"))
Dim str1 As String = (dt.Rows(0).Item("UserPassword"))
'Dim str2 As String = dt.Rows(0).Item("UserPassword")
'Dim str3 As String = dt.Rows(0).Item("userID")
Dim strpass As String = txtPassword.Text.Trim
If strpass = str1.Trim Then
Return True
Else
Return False
End If
End Function