asp.net记住我功能
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="RememberMe.Login" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript">
window.onload = function () {
document.getElementById('btnClose').onclick = function () {
window.close();
};
};
</script>
</head>
<body>
<form id="form1" runat="server">
<div style="text-align: center;">
<table>
<tr>
<td>用户名:
<input type="text" name="txtName" value="<%=uName %>" /></td>
</tr>
<tr>
<td>密 码:<input type="password" name="txtPwd" value="<%=pwd %>" />
</td>
</tr>
<tr>
<td colspan="2">
<input type="checkbox" name="rememberMe" value="1" checked="checked" />记住我</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="登录" />
<input type="button" value="关闭" id="btnClose" /></td>
</tr>
</table> </div>
</form>
</body>
</html>
Login.aspx
后台代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace RememberMe
{
public partial class Login : System.Web.UI.Page
{
protected string uName;
protected string pwd;
protected void Page_Load(object sender, EventArgs e)
{ if (Request.Cookies["user"] != null)
{
uName = Request.Cookies["user"].Values["n"];
pwd = Request.Cookies["user"].Values["p"];
}
if (IsPostBack)
{
string userName = Request.Form["txtName"];
string userPwd = Request.Form["txtPwd"];
if (!string.IsNullOrEmpty(Request.Form["rememberMe"]))
{
if (userName == "admin" && userPwd == "admin")
{
AlertAndRedirect("Index.aspx?n=" + userName, "登录成功");
HttpCookie cookie = new HttpCookie("user");
cookie["n"] = userName;
cookie["p"] = userPwd;
cookie.Expires = DateTime.Now.AddDays();
Response.Cookies.Add(cookie);
}
else
{
AlertAndRedirect("Login.aspx", "登录失败");
Response.Cookies["user"].Expires = DateTime.Now.AddDays(-);
}
}
else
{
Response.Cookies["user"].Expires = DateTime.Now.AddDays(-);
if (userName == "admin" && userPwd == "admin")
{
AlertAndRedirect("Index.aspx?n=" + userName, "登录成功");
}
else
{
AlertAndRedirect("Login.aspx", "登录失败");
}
}
} }
private void AlertAndRedirect(string redirectURL, string msg)
{
Response.Write("<script>alert('" + msg + "');window.location.href='" + redirectURL + "';</script>");
}
}
}
Login.aspx,cs
asp.net记住我功能的更多相关文章
- java实现记住密码功能(利用cookie)
<br> <input type="text" id="userName" name="userName" value=& ...
- 通过sharedpreferences实现记住密码功能
通过sharedpreferences实现记住密码功能
- jquery.cookie.js 操作cookie实现记住密码功能的实现代码
jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下. 复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...
- cookie记住密码功能
很多门户网站都提供了记住密码功能,虽然现在的浏览器都已经提供了相应的记住密码功能 效果就是你每次进入登录页面后就不需要再进行用户名和密码的输入: 记住密码功能基本都是使用cookie来进行实现的,因此 ...
- 【原创】js中利用cookie实现记住密码功能
在登录界面添加记住密码功能,我首先想到的是在java后台中调用cookie存放账号密码,大致如下: HttpServletRequest request HttpServletResponse res ...
- android: SharedPreferences实现记住密码功能
既然是实现记住密码的功能,那么我们就不需要从头去写了,因为在上一章中的最佳实 践部分已经编写过一个登录界面了,有可以重用的代码为什么不用呢?那就首先打开 BroadcastBestPractice 项 ...
- asp.net(C#)实现功能强大的时间日期处理类完整实例
作者:smartsmile2012 字体:[增加 减小] 类型:转载 时间:2016-06-30我要评论 这篇文章主要介绍了asp.net(C#)实现功能强大的时间日期处理类,封装了针对日期与时间的各 ...
- vue项目实现记住密码功能
一.谷歌浏览的残留问题 现在很多的网站都有一个需求是记住密码这个功能,为的是避免用户下次登录的时候繁琐的输入过程. 像是一些主流的浏览器(比如Chrome)都有了这个功能,而且如果你登录了Chrom ...
- SpringBoot + Spring Security 学习笔记(四)记住我功能实现
记住我功能的基本原理 当用户登录发起认证请求时,会通过UsernamePasswordAuthenticationFilter进行用户认证,认证成功之后,SpringSecurity 调用前期配置好的 ...
随机推荐
- JS 之DOM对象(2)
http://www.cnblogs.com/zourong/p/4792394.html 这篇文件介绍了DOM1中的一些属性和方法,下面的内容主要介绍DOM2和DOM3中新增的内容. 框架的变化 框 ...
- UltraEdit编辑器使用心得之正则表达式篇
ultraEdit 中通过Ctrl+R 可以快速进行文本替换等处理操作,如果在这中间用一些正则表达式那将帮助NI更高效的进行文字处理操作,相关正则表达式列述如下: % 匹配行首 - 表示搜索字符串必须 ...
- Linux第三次学习笔记
#信息的表示和处理 三种重要的数字表示 1. 无符号数编码: 基于传统的二进制表示法,表示大于或者等于零的数字. 2. 补码编码: 表示有符号数整数的最常见的方式,有符号数就是只可 以为正或者为负的数 ...
- Opencv step by step - ROI
什么是ROI?ROI就是region of interest ,就是你感兴趣的图像部分,在图像处理中,可能同时要处理多个ROI. Opencv有ROI的API,但是只能同时处理一个(书本上说的,未验证 ...
- 3.SQLAlchemy文档-SQLAlchemy Core(中文版)
这里的文描述了关于SQLAlchemy的的SQL渲染引擎的相关内容,包括数据库API的集成,事务的集成和数据架构描述服务.与以领域为中心的ORM使用模式相反,SQL表达式语言提供了一个数据构架为中心的 ...
- this,this,再次讨论javascript中的this,超全面
至于js中this这个东西,好多淫解释过了,看起来好高端的样子,不造你看懂了木有? 先引用比较高端的,“汤姆大叔“ 的,yes this 好了,下面加上鄙人比较挫的解释 论点: this 不是变量,不 ...
- 如何用MAT分析Android应用内存泄露
使用工具:Android Studio 2.0 Preview, Android Device Monitor, MAT(Memory Analyzer). 点击Android Studio工具栏上的 ...
- [USACO2005][POJ2454]Jersey Politics(随机化)
题目:http://poj.org/problem?id=2454 题意:给你3*k(k<=60)个数,你要将它们分成3个长度为k的序列,使得其中至少有两个序列的和大于k*500 分析:以为有高 ...
- neutron中的dhcp功能
1. 分布式dhcp 特点: 1)一个dhcp port对应多个host上的tap设备. 2)基于port event的network与agent的绑定与解绑定,即创建tap设备.namespace. ...
- css左右侧自动填充宽度布局
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...