• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

使用COOKIE对像实现保存用户基本信息(结合Session),ASP.Net实现用户登录全过程 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1.创建一个WEB用户控件页面

      。添加两个HTml 客户端DIV     并专为服务控件 前台代码如下

                 <div     >   ……</div>

                 <div     > ……</div>

      。在div   divLogin 中添加 Label(用户名)   textBox(用户名)    Label( 密码)    textBOx(密码)   Checkbox(记住我)  button(登入)

      。在div    DivMain   中 添加 Label(HI,)  Label(XXX)

2.WEB用户控件的后台代码实现      

        protected void Page_Load(object sender, EventArgs e)
          {
             //判断是否有Cookie信息可读
             if (Request.Cookies.Get("loginUserName") != null)
               {
                  //将Cookie中的登录信息读取出来保存到Session["loginUser"]中
                  Session["loginUser"] = Request.Cookies["loginUserName"].Value;
               }

 

             //通过判断Session["loginUser"]的值是否为空位判断是否登陆过,以及显示哪一个Div
             if (Session["loginUser"] == null)
               {
                  this.divLogin.Visible = true;
                  this.divMain.Visible = false;
               }
             else
               {
                  this.divLogin.Visible = false;
                  this.divLoginMain.Visible = true;
                 this.lblUserMessage.Text = Session["loginUser"].ToString();
               }
         }
       protected void btnLogin_Click(object sender, EventArgs e)   //登录按钮Click事件
         {
            //保存登陆信息到Session["loginUser"]
            if (ValidateUser(this.txtID.Text, this.txtPWD.Text))
              {
                 Session["loginUser"] = this.txtID.Text;
                 //如果选择了保存Cookie
                  if (this.chkIsSaveCookie.Checked)
                    {
                      HttpCookie cookie = new HttpCookie("loginUserName",this.txtID.Text);
                      cookie.Expires = DateTime.Now.AddMonths(1);
                      Response.Cookies.Add(cookie);
                   }
              }
              //刷新当前页面
              Response.Redirect(Request.Url.ToString());
         }

 

/// <summary>
/// 这里省略了访问数据库验证的过程
/// </summary>
/// <param name="id">登陆账号</param>
/// <param name="pwd">登陆密码</param>
/// <returns></returns>
public bool ValidateUser(string id, string pwd)     //该方法用于数据验证,此处略
 {
     return true;
 }

protected void btnSafeExit_Click(object sender, EventArgs e)     //安全退出按钮Click事件
  {
     //清空Session中的用户信息
     Session["loginUser"] = null;
     //将本地Cookie中的信息移除----让Cookie过期
     HttpCookie cookie = Request.Cookies["loginUserName"];
     if (cookie != null)
       {
         cookie.Expires = DateTime.Now.AddDays(-10);
         Response.Cookies.Add(cookie);
       }

 

                //刷新当前页面
                Response.Redirect(Request.Url.ToString());

 

          }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
asp.net中.ASPX与.CS文件的关系发布时间:2022-07-10
下一篇:
学习JavaEE,对比ASP.NET顿悟出一点点道理发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap