求asp.net登录源码完全示例 (要vb.net代码)
具体要求:
输入用户名(yhm)和口令(kl)点一个按钮,到sql server看下输入的用户名和口令是否存在(这个查表判断过程我会,设为: if cunzai then ...)
如存在转到info.aspx,并在info.aspx页面上用response.write显示出用户名和口令(目的是想学会如何调用这两个变量)
如不存在,显示“对不起,您输入的帐户不正确。”并回到登录页面。通过这个实例我想学会:
1.如何输入用户名和口令并到sqlserver表中验证是否存在这个帐号
2.如何在登录后能在各个后续页面中访问到刚才输入的用户名和口令我想代码一定不长,请写完整,以前他们讲的我一直没听懂。谢谢!
具体要求:
输入用户名(yhm)和口令(kl)点一个按钮,到sql server看下输入的用户名和口令是否存在(这个查表判断过程我会,设为: if cunzai then ...)
如存在转到info.aspx,并在info.aspx页面上用response.write显示出用户名和口令(目的是想学会如何调用这两个变量)
如不存在,显示“对不起,您输入的帐户不正确。”并回到登录页面。通过这个实例我想学会:
1.如何输入用户名和口令并到sqlserver表中验证是否存在这个帐号
2.如何在登录后能在各个后续页面中访问到刚才输入的用户名和口令我想代码一定不长,请写完整,以前他们讲的我一直没听懂。谢谢!
解决方案 »
- js+iframe的问题,求大神来解答。
- DataSet 更新不成功!!!
- html和asp.net问题
- 公司需要做一个网上考试管理系统,需要北京的公司来做,有兴趣的情进
- GetInt32(0); C#问题
- datable可以排序吗???
- 永远爱与恨的treeview
- ***谁用过ActiveReports?救命!!!***
- 我不知道下一步该学什么了,大家帮帮我。
- 请教: 这行代码表示什么意思? <%@ OutputCache VaryByParam="none" VaryByCustom="SearchPageKey" Location="server" Duration="43200" %
- ASP.NET 如何判断上传文件
- 急:再问关闭弹出窗口并刷新父窗口的问题
登录很简单的,现成代码没有,网上到处都是,可以去搜下
If txtUserNo.Text = "" Then
myMsgBox("用户名不能为空,请重新输入!")
Else
Dim MyConStr as String = WebConfigurationManager.ConnectionStrings(1).ConnectionString '获取连接字符串
Dim mycon As New SqlConnection(MyConStr)
Dim mycom As New SqlCommand("select LOGIN,Password from madmoper Where LOGIN='" + txtUserNo.Text + "'", mycon)
Dim myreader As SqlDataReader If txtUserPwd.Text = "" Then myMsgBox("用户密码不能为空,请重新输入!") : Exit Sub Try
mycon.Open() : myreader = mycom.ExecuteReader
If myreader.Read Then
Session("OperName") = myreader("OperName")
Session("OperNo") = myreader("OperNo")
If txtUserPwd.Text <> myreader("Password") Then
myMsgBox("用户密码错误,请重新输入!") : Exit Sub
Else
Session("rolekey") = myreader("RoleKey")
Session("operdept") = myreader("OperDept")
If Session("rolekey") = "" Then myMsgBox("您没有权根使用本系统!") : Exit Sub
Response.Redirect("FrmMain.aspx")
End If
Else
myMsgBox("无该帐号,请重新输入!")
txtUserNo.Text = "" : txtUserPwd.Text = ""
End If
myreader.Close() : mycon.Close()
Catch ex As Exception
myTFstr = ex.Message
End Try
上面最简单的啦。
Dim key As String = "Close"
Dim script As String = "<script language=javascript>alert('" & msg & "');</script>"
Dim csm As ClientScriptManager = Page.ClientScript
If (Not csm.IsStartupScriptRegistered(key)) Then csm.RegisterStartupScript(Me.Page.GetType(), key, script, False)
End Sub
strSQL1 = " select yhm,kl from Employee where yhm='" & TextBox1.Text & "' and kl='" & TextBox2.Text & "'"
Dim connstr = System.Configuration.ConfigurationManager.AppSettings("connstring")
Dim cn As SqlConnection = New SqlConnection(connstr)
Dim comm As SqlCommand = New SqlCommand(strSQL1, cn)
cn.Open()
Dim dr As SqlDataReader = comm.ExecuteReader
Dim HexStrToDecStr As New AD_Fun
Dim OctetToHexStr As New AD_Fun
If dr.Read() Then '如果存在就有值便把该值赋给session
Session("user_account") = TextBox1.Text
session("user_Pass")=textbox2.text
Response.Redirect("info.aspx")
Else
Response.Write("<script language='JavaScript'>window.alert('对不起,您输入的帐户不正确');history.back(-1) ;</script>")
End If
而在后续中其实本身session就会带值到这个操作结束了~~~就是你除非你关闭IE一般session的值会一直存在~~~不过我觉得“yangpeiyu”考虑的比较全~~~o(∩_∩)o...我只是根据你的意思说下简单的代码~~
Dim OctetToHexStr As New AD_Fun
这两段代码是我本来代码中用来抓取登陆域的 用了拿掉~~忽略~~
1。在您的代码中没看到登录正确后去向哪个页面,只看到登录失败去哪页,该如何加上这个功能?
2。假设登录正确后去info.aspx,如何避免用户直接输入网址调用info.aspx?
3。在这个info.aspx中能调用存于session中的用户名和口令么?又如何保证在别的页面也能调用session中的用户名和口令?
4。以下我引用您的代码,其中中标红的变量我不知道是什么时候声明的,代码里没见声明,怎么就开始用了?
If txtUserNo.Text = "" Then
myMsgBox("用户名不能为空,请重新输入!")
Else
Dim MyConStr as String = WebConfigurationManager.ConnectionStrings(1).ConnectionString '获取连接字符串
Dim mycon As New SqlConnection(MyConStr)
Dim mycom As New SqlCommand("select LOGIN,Password from madmoper Where LOGIN='" + txtUserNo.Text + "'", mycon)
Dim myreader As SqlDataReader If txtUserPwd.Text = "" Then myMsgBox("用户密码不能为空,请重新输入!") : Exit Sub Try
mycon.Open() : myreader = mycom.ExecuteReader
If myreader.Read Then
Session("OperName") = myreader("OperName")
Session("OperNo") = myreader("OperNo")
If txtUserPwd.Text <> myreader("Password") Then
myMsgBox("用户密码错误,请重新输入!") : Exit Sub
Else
Session("rolekey") = myreader("RoleKey")
Session("operdept") = myreader("OperDept")
If Session("rolekey") = "" Then myMsgBox("您没有权根使用本系统!") : Exit Sub
Response.Redirect("FrmMain.aspx")
End If
Else
myMsgBox("无该帐号,请重新输入!")
txtUserNo.Text = "" : txtUserPwd.Text = ""
End If
myreader.Close() : mycon.Close()
Catch ex As Exception
myTFstr = ex.Message
End Try
mycon.Open() : myreader = mycom.ExecuteReader 所以其实那个你不知道的变量是他在抓取查询出来的sql的值呢~~~
就说几个点就好
strSQL1 = " select yhm,kl from Employee where yhm='" & TextBox1.Text & "' and kl='" & TextBox2.Text & "'"
这样来验证密码非常不好。为什么呢?去查查SQL注入。
采用非加密的密码机制也不大好。算是一种学生系统