日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

引用借以记录借鉴 实现记住密码和自动登录功能

發(fā)布時間:2025/7/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 引用借以记录借鉴 实现记住密码和自动登录功能 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

WEB頁面代碼:

<form id="Form1" runat="server"><input type="hidden" id="hidPass" runat="server" /><input type="text" runat="server" id="txtLoginName" /><asp:TextBox runat="server" ID="txtPassWord" class="textwidthheigh" TextMode="Password"></asp:TextBox><input type="checkbox" runat="server" value="記住密碼" id="chkRemember" onclick="CheckRemember()" /><input type="checkbox" runat="server" value="自動登錄" id="chkLogin" onclick="CheckLogin()" /><asp:Button runat="server" id="btnLogin" onclick="btnLogin_Click" /><input type="button" id="btnClear" onclick="Clear()" /></form><script type="text/javascript" language="javascript">//頁面加載用戶名輸入框獲得焦點 document.getElementById("txtLoginName").focus();function Clear() {//用戶點擊取消,清空用戶名和用戶密碼 document.getElementById("txtLoginName").value = "";document.getElementById("txtPassWord").value = "";}function CheckLogin() {//用戶勾選自動登錄時,把記住密碼也勾選上var remember = document.getElementById("chkRemember");remember.checked = true;}function CheckRemember() {var remenber = document.getElementById("chkRemember");var login = document.getElementById("chkLogin");if (remenber.checked == false) {login.checked = false;//用戶去掉記住密碼時,也把自動登錄去掉 }}</script>

后臺代碼:

protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){//獲取客戶端的Cookies,分別兩個cookies,一個登陸名,一個密碼HttpCookie LoginNameCookie = Request.Cookies["Bic_LoginName"];HttpCookie LoginPassCookie = Request.Cookies["Bic_Pass"];if (LoginNameCookie != null){//登錄名的cookies不為空,填充登陸名txtLoginName.Value = LoginNameCookie.Value;}if (LoginPassCookie != null){//密碼cookies不為空,給密碼框和隱藏密碼框填充,當(dāng)然我們的密碼是加密過才存到cookies去的,至于以藏文本框的作用后面就會看到this.txtPassWord.Attributes.Add("value", LoginPassCookie.Value + "");hidPass.Value = LoginPassCookie.Value + "";//賦值給隱藏控件chkRemember.Checked = true;}//獲取是否有勾選自動登錄的cookiesHttpCookie Login = Request.Cookies["Bic_LoginAuto"];//當(dāng)用戶在系統(tǒng)點擊退出時if (Request["opFlag"] == "Exit"){this.txtPassWord.Attributes.Add("value", "");//把密碼去掉chkRemember.Checked = false;//記住密碼去掉HttpCookie loginNameCookie = Request.Cookies["Bic_LoginName"];//獲取登錄名cookiesHttpCookie loginPassCookie = Request.Cookies["Bic_Pass"];//獲取密碼cookiesif (loginNameCookie != null){//把cookies時間設(shè)為-2相當(dāng)于刪掉了cookiesloginNameCookie.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(loginNameCookie);}if (loginPassCookie != null){//把密碼的cookies也刪掉loginPassCookie.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(loginPassCookie);}//自動登錄cookies也一樣HttpCookie login = Request.Cookies["Bic_LoginAuto"];if (login != null){login.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(login);}}else//用戶打開登錄界面時 {//自動登錄cookies不為空,用戶名不為空,隱藏框密碼不為空if (Login != null && txtLoginName.Value != "" && hidPass.Value != ""){SysUser user = new SysUser();user.Login_Name = txtLoginName.Value;user.Login_Pass = hidPass.Value;int i = SysUserBLL.Login(user);//驗證登錄if (i > 0){//成功登錄跳轉(zhuǎn)到default.aspx頁面Page.Session["Login_Name"] = user.Login_Name;HttpContext.Current.Session["Display_Name"] = SysUserBLL.getDisplayNameByname(user.Login_Name);Response.Write("<script>window.location='Default.aspx';</script>");Response.End();}}}}}//點擊登錄按鈕事件protected void btnLogin_Click(object sender, EventArgs e){//判斷是否為空if (txtLoginName.Value.Trim() != "" && txtPassWord.Text.Trim() != ""){SysUser user = new SysUser();user.Login_Name = txtLoginName.Value.Trim();user.Login_Pass = CommonHelper.MD5encipher(txtPassWord.Text.Trim());//MD5加密HttpCookie LoginNameCookie = Request.Cookies["Bic_LoginName"];HttpCookie LoginPassCookie = Request.Cookies["Bic_Pass"];if (LoginNameCookie != null)//如果是記住密碼情況 {if (txtLoginName.Value.Trim() == LoginNameCookie.Value.Trim())//讀取到cookies保存的用戶名和文本框用戶名相同,預(yù)防用戶又改動 {if (LoginPassCookie != null){if (txtPassWord.Text.Trim() == LoginPassCookie.Value.Trim())//cookies讀取到的密碼和文本框密碼相同 {user.Login_Pass = txtPassWord.Text.Trim();}}}}int i = SysUserBLL.Login(user);//驗證登錄if (i > 0){if (chkRemember.Checked == true)//記住密碼 {HttpCookie loginNameCookie = new HttpCookie("Bic_LoginName", user.Login_Name);HttpCookie loginPassCookie = new HttpCookie("Bic_Pass", user.Login_Pass);loginPassCookie.Expires = DateTime.Now.AddDays(1);loginNameCookie.Expires = DateTime.Now.AddDays(1);Response.Cookies.Add(loginNameCookie);Response.Cookies.Add(loginPassCookie);if (chkLogin.Checked == true)//自動登錄 {HttpCookie Login = new HttpCookie("Bic_LoginAuto", "true");Login.Expires = DateTime.Now.AddDays(1);Response.Cookies.Add(Login);}else{HttpCookie Login = Request.Cookies["Bic_LoginAuto"];if (Login != null){Login.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(Login);}}}else//沒選記住密碼 {HttpCookie loginNameCookie = Request.Cookies["Bic_LoginName"];HttpCookie loginPassCookie = Request.Cookies["Bic_Pass"];if (loginNameCookie != null){loginNameCookie.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(loginNameCookie);}if (loginPassCookie != null){loginPassCookie.Expires = DateTime.Now.AddDays(-2);Response.Cookies.Set(loginPassCookie);}}Page.Session["Login_Name"] = user.Login_Name;HttpContext.Current.Session["Display_Name"] = SysUserBLL.getDisplayNameByname(user.Login_Name);Response.Write("<script>window.location='Default.aspx';</script>");}else{Response.Write("<script>alert('用戶名或密碼錯誤!');window.location='Login.aspx';</script>");}}else{Response.Write("<script>alert('請輸入賬號和密碼!');window.location='Login.aspx';</script>");}}

?

總結(jié)

以上是生活随笔為你收集整理的引用借以记录借鉴 实现记住密码和自动登录功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。