protected void lkbtLogin_Click(object sender, System.EventArgs e)
創(chuàng)新互聯(lián)建站專注于海門企業(yè)網(wǎng)站建設,自適應網(wǎng)站建設,成都做商城網(wǎng)站。海門網(wǎng)站建設公司,為海門等地區(qū)提供建站服務。全流程按需網(wǎng)站策劃,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務
{
if(txtVerifyNum.Text.Trim() != Session["SessionAppendNumber"].ToString())
{
oprtb.AlertMsg("輸入的驗證碼錯誤",Page);
return;
}
DataSet ds = new DataSet();
string sql = "select UserID,Name,DepartID,CompanyID,";
sql = sql+"(select Name from Depart where ((DepartID=UserList.DepartID) and ( CompanyID=UserList.CompanyID))) as DepartName,";
sql = sql+"(select Name from Company where (CompanyID=UserList.CompanyID)) as CompanyName ";
sql = sql+"from UserList where UserID='" + txtUserID.Text.Trim() +"' and Password='" + Encrypt.EncryptPwd(txtPassword.Text.Trim(),"MD5") + "' and Cancellation = 0";
//string sql = "select * from UserList where UserID='" + txtUserID.Text.Trim() +"' and Password='" + Encrypt.EncryptPwd(txtPassword.Text.Trim(),"MD5") + "' and Cancellation = 0";
ds = oprtb.SelectTable(sql);
if (ds.Tables[0].Rows.Count = 0)
{
oprtb.AlertMsg("輸入的用戶名或密碼錯誤",Page);
return;
}
else
{
string UHAddress = Request.UserHostAddress;
string currentTime = DateTime.Now.ToString("yyyyMMdd hhmmss");
//登陸成功
Session["UserID"] = ds.Tables[0].Rows[0]["UserID"].ToString();
Session["Name"] = ds.Tables[0].Rows[0]["Name"].ToString();
Session["DepartID"] = ds.Tables[0].Rows[0]["DepartID"].ToString();
Session["DepartName"] = ds.Tables[0].Rows[0]["DepartName"].ToString();
Session["CompanyID"] = ds.Tables[0].Rows[0]["CompanyID"].ToString();
Session["CompanyName"] = ds.Tables[0].Rows[0]["CompanyName"].ToString();
//設置用戶的登陸時間
oprtb.SetStartTime(txtUserID.Text.Trim());
//設置用戶的登陸標記
string s_mark = txtUserID.Text.Trim() + "_" + UHAddress + "_" + currentTime;
oprtb.SetLoginMark(s_mark,txtUserID.Text.Trim());
//保存登陸標記
Session["LoginMark"] = s_mark;
MCompany.SystemLog slstru = new YesErp.MCompany.SystemLog();
slstru.SystemLog_IP = UHAddress;
slstru.SystemLog_LogIn = System.DateTime.Now;
slstru.SystemLog_Name = ds.Tables[0].Rows[0]["Name"].ToString();//用戶姓名
slstru.SystemLog_ID = Int32.Parse(ds.Tables[0].Rows[0]["UserID"].ToString());//用戶ID
//寫系統(tǒng)日志
oprtb.LoginSystemLog(slstru);
//oprtb.AlertMsg("登錄成功",Page);
Session["LoginTime"] = System.DateTime.Now;
//判斷并轉到新的頁面
oprtb.ChangeUrl("../index.aspx",Page);
}
}
哈哈簡單哪
第一步:登陸網(wǎng)頁代碼
第二步:登陸以后判斷是否登陸成功
有兩種方法:1.獲取網(wǎng)頁代碼,判斷網(wǎng)頁字符有無”登陸成功”字樣
源代碼:
2.就是判斷網(wǎng)頁是否跳轉到了某一頁
源代碼:
兩種方法結合起來用,可以判斷網(wǎng)頁是否無法連接
Private Sub SendBlogTimer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SendBlogTimer.Tick
Dim textboxUserId As HtmlElement
Dim textboxPassword As HtmlElement
Dim buttonSubmit As HtmlElement
textboxUserId = SendBlogBrowser.Document.All("username")'獲取用戶名輸入框
textboxPassword = SendBlogBrowser.Document.All("password")'獲取密碼輸入框
buttonSubmit = SendBlogBrowser.Document.All("btnLogin")'獲取登陸按鈕
textboxUserId.SetAttribute("value","用戶名")'給用戶名輸入框賦值
textboxPassword.SetAttribute("value","密碼")'給密碼框賦值
buttonSubmit.InvokeMember("click")’執(zhí)行登陸按鈕的單擊
End Sub
其中的SendBlogBrowser為WebBrowser控件
人家要vb的。。。一樓的不地道。
Partial Class Login
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
btnLogin.Enabled = True
lblMsg.Text = ""
If Session("loginName") "" Then
btnLogin.Enabled = False
lblMsg.Text = "Please Logout first."
End If
txtName.Focus()
End Sub
Protected Sub btnlogin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnLogin.Click
Dim objDBUser As New cDBUser
If objDBUser.checkLoginName(txtName.Text) = 1 Then
Dim accessLv As Integer = objDBUser.checkPassword(txtName.Text, txtPwd.Text)
If accessLv = -1 Then
lblMsg.Text = "Wrong Password. Please try again."
txtPwd.Focus()
ElseIf accessLv = 0 Then
lblMsg.Text = "Your account is locked. Contact with site admin."
Else
lblMsg.Text = "Login successfully."
Dim loginName As String = txtName.Text
Session.Add("loginName", loginName)
Session.Add("userName", objDBUser.getUserName(loginName))
Response.Redirect("Index.aspx")
End If
Else
lblMsg.Text = "Wrong Login Name."
txtName.Focus()
End If
End Sub
Protected Sub btnLogout_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnLogout.Click
Session.Clear()
End Sub
End Class
這個是code behind file
另外需要在app code 里面放一個叫dbUser和Cuser的class
Imports Microsoft.VisualBasic
Imports System.Data.SqlClient
Imports System.Data
Public Class cDBUser
Private conn As New SqlConnection
Private connstr As String = System.Configuration.ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Private sqlCmd As New SqlCommand
Public Sub New()
conn.ConnectionString = connstr
sqlCmd.Connection = conn
End Sub
Public Function checkLoginName(ByVal loginName As String) As Integer
Try
conn.Open()
sqlCmd.CommandText = "SELECT COUNT(password) FROM tblUser where LoginName = '" loginName "'"
Return sqlCmd.ExecuteScalar
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function checkPassword(ByVal loginName As String, ByVal pwd As String) As Integer
Try
conn.Open()
sqlCmd.CommandText = "SELECT COUNT(*) FROM tblUser WHERE loginName = '" loginName _
"' and password = '" pwd "'"
Dim passwordOK As Integer = sqlCmd.ExecuteScalar
If passwordOK = 1 Then
sqlCmd.CommandText = "SELECT accesslevel FROM tblUser WHERE loginName = '" loginName _
"' and password = '" pwd "' and status = 1"
Return CInt(sqlCmd.ExecuteScalar)
Else
Return -1
End If
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function getOldPwd(ByVal loginName As String) As String
Try
conn.Open()
sqlCmd.CommandText = "SELECT Password FROM tblUser WHERE LoginName = '" loginName "'"
Return sqlCmd.ExecuteScalar
Catch ex As Exception
MsgBox(ex.Message)
Return Nothing
Finally
conn.Close()
End Try
End Function
Public Function getUserName(ByVal loginName As String) As String
Try
conn.Open()
sqlCmd.CommandText = "SELECT UserName FROM tblUser WHERE LoginName = '" loginName "'"
Return sqlCmd.ExecuteScalar
Catch ex As Exception
MsgBox(ex.Message)
Return Nothing
Finally
conn.Close()
End Try
End Function
Public Function getAllUsers() As DataView
Try
conn.Open()
Dim sqlAdpt As New SqlDataAdapter("SELECT userID,LoginName,UserName,Email,AccessLevel,Status FROM tblUser", connstr)
Dim dt As New DataTable
sqlAdpt.Fill(dt)
Return dt.DefaultView
Catch ex As Exception
MsgBox(ex.Message)
Return Nothing
Finally
conn.Close()
End Try
End Function
Public Function getUserDetails(ByVal loginName As String) As cUser
Try
conn.Open()
Dim sqlAdpt As New SqlDataAdapter("SELECT * from tblUser where loginName = '" loginName "'", connstr)
Dim dt As New DataTable
sqlAdpt.Fill(dt)
Dim dr As DataRow = dt.Rows(0)
Dim objUser As New cUser
objUser.userId = dr.Item("UserId")
objUser.loginName = dr.Item("LoginName")
objUser.password = dr.Item("Password")
objUser.userName = dr.Item("UserName")
objUser.Email = dr.Item("Email")
objUser.accessLevel = dr.Item("AccessLevel")
objUser.status = dr.Item("Status")
Return objUser
Catch ex As Exception
MsgBox(ex.Message)
Return Nothing
Finally
conn.Close()
End Try
End Function
Public Function changeUserStatus(ByVal userId As Integer) As Integer
Try
conn.Open()
sqlCmd.CommandText = "UPDATE tblUser SET status = (1 - status) WHERE userId = " userId
Return CInt(sqlCmd.ExecuteScalar)
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function changeEmail(ByVal loginName As String, ByVal newEmail As String) As Integer
Try
conn.Open()
sqlCmd.CommandText = "UPDATE tblUser SET Email = '" newEmail "' WHERE LoginName = '" loginName "'"
Return sqlCmd.ExecuteNonQuery
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function changePwd(ByVal loginName As String, ByVal newPwd As String) As Integer
Try
conn.Open()
sqlCmd.CommandText = "UPDATE tblUser SET password = '" newPwd "' WHERE loginName = '" loginName "'"
Return sqlCmd.ExecuteNonQuery
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function addUser(ByVal objUser As cUser) As Integer
Try
conn.Open()
sqlCmd.CommandText = "INSERT INTO tblUser (userName,loginName,password,email,accessLevel,status) VALUES('" _
Trim(objUser.userName) "','" Trim(objUser.loginName) "','" objUser.password "','" Trim(objUser.Email) "','" _
objUser.accessLevel "',1)"
If sqlCmd.ExecuteNonQuery() = 1 Then
sendEmail()
Return 1
End If
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function retrievePwd(ByVal loginName As String) As Integer
Try
conn.Open()
sqlCmd.CommandText = "SELECT password from tblUser where loginName = '" loginName "'"
Dim pwd As String = sqlCmd.ExecuteScalar
Dim email As String = getEmail(loginName)
If email "" And pwd "" Then
sendEmail()
Return 1
Else
Return 0
End If
Catch ex As Exception
MsgBox(ex.Message)
Return 0
Finally
conn.Close()
End Try
End Function
Public Function getEmail(ByVal loginName As String) As String
conn.Close()
Try
conn.Open()
sqlCmd.CommandText = "SELECT Email from tblUser where loginName = '" loginName "'"
Dim email As String = sqlCmd.ExecuteScalar
Return email
Catch ex As Exception
MsgBox(ex.Message)
Return ""
Finally
conn.Close()
End Try
End Function
Private Sub sendEmail()
'some code here to send email
End Sub
End Class
Imports Microsoft.VisualBasic
Public Class cUser
Private intUserId As Integer
Private strUserName As String
Private strLoginName As String
Private strPassword As String
Private strEmail As String
Private shortAccessLevel As Short
Private byteStatus As Byte
Public Sub New()
End Sub
Public Property userId() As Integer
Get
Return intUserId
End Get
Set(ByVal value As Integer)
intUserId = value
End Set
End Property
Public Property userName() As String
Get
Return strUserName
End Get
Set(ByVal value As String)
strUserName = value
End Set
End Property
Public Property loginName() As String
Get
Return strLoginName
End Get
Set(ByVal value As String)
strLoginName = value
End Set
End Property
Public Property password() As String
Get
Return strPassword
End Get
Set(ByVal value As String)
strPassword = value
End Set
End Property
Public Property Email() As String
Get
Return strEmail
End Get
Set(ByVal value As String)
strEmail = value
End Set
End Property
Public Property accessLevel() As String
Get
Return shortAccessLevel
End Get
Set(ByVal value As String)
shortAccessLevel = value
End Set
End Property
Public Property status() As Byte
Get
Return byteStatus
End Get
Set(ByVal value As Byte)
byteStatus = value
End Set
End Property
End Class
問題應該出在你的查詢語句的結果沒有值,你用你的查詢語句到SQL中是否有返回值?記得加上你的條件,另外,你語句里這一句是多余的.Dim s As Object = sComm.ExecuteScalar 以下語句測試正常 Dim myCn As New SqlClient.SqlConnection Try myCn.ConnectionString = sConnString myCn.Open() Dim mySQL As String = "SELECT * FROM ygzl" Dim sComm As New SqlClient.SqlCommand(mySQL, myCn) If sComm.ExecuteScalar Then Dim User_MainForm As New Form1 User_MainForm.Show() Else MsgBox("用戶名或密碼不正確,請重試!") End If Catch ex As Exception MsgBox(ex.Message) Finally myCn.Close() '關閉連接 End Try
1.創(chuàng)建用戶 create user 新建用戶 密碼
2.將登錄的權限分配給新建的用戶
grant login to 新建用戶
我這里寫的代碼沒有測試,需要具體測試修改一下,^_^
思路就是這樣,
呵呵,希望能有幫助,^_^
新聞標題:vb.net登陸代碼,vb登錄系統(tǒng)代碼
本文路徑:http://aaarwkj.com/article28/dsiepjp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、網(wǎng)站排名、網(wǎng)頁設計公司、微信公眾號、虛擬主機、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)