登录时记住用户名和密码及cookie案例应用

文章原址:http://www.jb51.net/article/33588.htm

登录样子,可以参考某一论坛的登录介面:

 

记住这些信息,可以使用Cookie来实现,更多Cookie应用,可参考 http://jb51.net/article/33590.htm http://jb51.net/article/33591.htm 现在我们来模拟一个登录介面:

复制代码 代码如下:
<table> <tr> <td style="width: 15%; text-align: right;"> User Name </td> <td> <asp:TextBox ID="TextBoxUserName" runat="server"></asp:TextBox> </td> </tr> <tr> <td style="text-align: right;"> Password </td> <td> <asp:TextBox ID="TextBoxPassword" TextMode="Password" runat="server"></asp:TextBox> </td> </tr> <tr> <td style="text-align: right;"> Remember me </td> <td> <asp:CheckBox ID="CheckBoxRememberMe" runat="server" /> </td> </tr> <tr> <td style="text-align: right;"> </td> <td> <asp:Button ID="ButtonLogin" runat="server" Text="Login" OnClick="ButtonLogin_Click" /> </td> </tr> </table>

运行时的效果:

 

 

我们要判断用户在点铵钮的Click事件时,是否有选择Remember me这个CheckBox,如果选中了,要把这个登录的信息记录至Cookie,还要把Cookie的过期时间设置7天之后过期。反之,只把登录的信息记录入Cookie之中,不设置Cookie的过期时间。可以参考下面的登录事件代码:

复制代码 代码如下:
protected void ButtonLogin_Click(object sender, EventArgs e) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); Response.Cookies["Password"].Expires = DateTime.Now.AddDays(-1);
if (CheckBoxRememberMe.Checked) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(7); Response.Cookies["Password"].Expires = DateTime.Now.AddDays(7); }
Response.Cookies["Name"].Value = this.TextBoxUserName.Text.Trim(); Response.Cookies["Password"].Value = this.TextBoxPassword.Text.Trim (); }

接下来,你还得在Page_load中去读取Cookie.

复制代码 代码如下:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Request.Cookies["Name"] != null && Request.Cookies["Password"] != null) { this.TextBoxUserName.Text = Request.Cookies["Name"].Value; this.TextBoxPassword.Attributes["value"] = Request.Cookies["Password"].Value; } } }

看看操作演示,演示中有三种状态演示,第一种是没有点选CheckBox,这样的话,关闭窗口,下次再打开时,没有记住登录的信息。
第二是点选择了CheckBox,这样下次再打开窗口,还可以看到帐号与密码存储在相应的文本框中,这都是Cookie没有过期。
第三种,再点一次登录,没有点选remember me的CheckBox,这样系统又移除了Cookie:

 

转载于:https://www.cnblogs.com/ydfq-home/p/5017356.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399256.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

退出登录后点返回键 是登录状态_看了这50条登录的测试点,你还敢说测试很容易吗...

条件&#xff1a;一个用户名输入框 (要求15个字符以内)一个密码输入框 (要求8个字符以内)一个登录按钮针对以上条件进行测试用例的设计先回顾一下测试用例的设计方法&#xff1a;等价类&#xff0c;边界值&#xff0c;错误猜测法&#xff0c;因果图&#xff0c;场景法测试功能点…

HTML5原生拖拽/拖放(drag drop)详解

前言 拖放&#xff08;drap && drop&#xff09;在我们平时的工作中&#xff0c;经常遇到。它表示&#xff1a;抓取对象以后拖放到另一个位置。目前&#xff0c;它是HTML5标准的一部分。我从几个方面学习并实践这个功能。 拖放的流程对应的事件 我们先看下拖放的流程&a…

Linux 下 新增Oracle10g 实例

主要分为5步&#xff1a;创建实例目录&#xff0c;创建密码文件&#xff0c;创建参数文件&#xff0c;创建建库脚本并建库&#xff0c;创建数据字典。 其中&#xff0c;需要特别注意2点&#xff1a; 目录的权限&#xff0c;即用户和所属用户组都要是oracle。可以切换到已存在的…

Linux vmstat命令详解

vmstat命令是最常见的Linux/Unix监控工具&#xff0c;可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率&#xff0c;内存使用&#xff0c;虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令&#xff0c;一个是Linux/Unix都支持&#xff0c;二是…

python中如何比较两个列表_python中如何比较两个列表

cmp() 方法用于比较两个列表的元素。cmp()方法语法&#xff1a;cmp(list1, list2)参数&#xff1a;list1 -- 比较的列表。list2 -- 比较的列表。返回值&#xff1a;如果比较的元素是同类型的,则比较其值,返回结果。如果两个元素不是同一种类型,则检查它们是否是数字。如果是数字…

窗体设置

锁定窗体大小&#xff1a;FormborderStyleFixedDialog 去掉最大化&#xff1a;maxminzeboxfalse 去掉最小化&#xff1a;minminzeboxfalse转载于:https://www.cnblogs.com/swtool/p/3840171.html

rc mysql common_RR与RC隔离级别下MySQL不同的加锁解锁方式

作者 韩杰沃趣科技MySQL数据库工程师出品 沃趣科技| RC与RR隔离级别下MySQL不同的加锁解锁方式MySQL5.7.21数据准备rootlocalhost : pxs 05:26:27> show create table dots\G*************************** 1. row ***************************Table: dotsCreate Table: …

浅谈web应用的负载均衡、集群、高可用(HA)解决方案

浅谈web应用的负载均衡、集群、高可用(HA)解决方案转载于:https://www.cnblogs.com/hfultrastrong/p/7887420.html

今天开通了博客园帐号

打算开博客很久了&#xff0c;最近一直在纠结于应该在哪里开博客&#xff0c;也选了一些博客网站做了粗略的对比&#xff0c;同时还看了网友们的比较&#xff0c;将要在博客园和CSND之间选择&#xff0c;最后选择了博客园。原因在于博客园更专注&#xff0c;希望在这里能够和大…

hdu 确定比赛名次

算法&#xff1a;拓扑排序 题意&#xff1a;有一个比赛&#xff0c;现在知道很多队之间的关系&#xff1b;让你去让确定比赛排名&#xff1b; Problem Description 有N个比赛队&#xff08;1<N<500&#xff09;&#xff0c;编号依次为1&#xff0c;2&#xff0c;3&#x…

Tomcat中server.xml文件内各节点详解

由于 Tomcat 基于 Java&#xff0c;实际上在各种 Linux 发行版里的配置方法都大同小异&#xff0c;只是我看见在 Arch Linux 环境里搭建 Tomcat 的文章比较少&#xff0c;所以在 Arch Linux 实践一遍然后得出此文。此文假设你对 Tomcat 并不十分了解&#xff0c;主要笔墨将会在…

thinkphp mysql cache_thinkPHP5框架数据库连贯操作之cache()用法分析

本文实例讲述了thinkPHP5框架数据库连贯操作之cache()用法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;介绍TP5中自带的缓存系统&#xff0c;是File型缓存。也就是文件型缓存。存储地址是&#xff1a;根目录..untimecache(根目录指public)。这个缓存系统相较于redi…

[Javascript_库编写]创建自己的“JavaScript库”

一.编写JavaScript库要注意的问题 为了让自己的JS库构建的更加优雅、合理&#xff0c;我们编写JS库时要注意两方面的内容&#xff1a; 1.不要使用版本检测&#xff0c;而要使用能力检测 由于浏览器的类型和版本太多&#xff0c;以及不断的新的浏览器出现&#xff0c;我们不可能…

文件的分割与合并

/*文件的分割*/ #include<stdio.h> #include<stdlib.h> #include<string.h> #define NUM 1024 * 1024 * 100 int main() {//所需分割的文件路径FILE *fr fopen("F:\\PL.exe", "rb");if (fr NULL){exit(-1);}char *buff (char*)malloc…

mysql5.6.24怎么打开_mysql 5.6.24 安装配置方法图文教程

由于工作需要&#xff0c;开始使用mysql数据库&#xff0c;已经好久没有使用了。基本已经忘了差不多。今天重新安装配置了一下&#xff0c;写个随笔记录一下&#xff0c;以免自己以后需要的时候翻看&#xff0c;如有不正确或需要补充的&#xff0c;希望大家多多留言。首先下载m…

sublime text 3安装及使用

安装配置 安装&#xff1a; 安装环境:Ubuntu 16.04 官网下载sublime text 3 https://www.sublimetext.com/3 解压&#xff1a; tar xvf 文件名 进入 sublime_text_3文件夹&#xff0c;运行 ./sublime_text 注册码&#xff1a;我用的时候有用 —– BEGIN LICENSE —–TwitterInc…

微信公众号新功能-原创声明、赞赏功能、评论管理、页面模版

原文&#xff1a;http://www.shichangbu.com/portal.php?modview&aid25931 公众号如何申请这些功能&#xff1f; 在微信公众号后台和QQ经常都有人问我诸如此类的问题&#xff1a;”微信公众平台原创声明怎么开通?“、”微信赞赏等功能是怎么回事…

mysql时间聚合_11.MySQL数值、日期和时间、信息、聚合函数

mysql> ALTER TABLE 名单 ADD id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT FIRST;Query OK, 0 rows affected (0.27 sec)Records: 0 Duplicates: 0 Warnings: 0mysql> DESC 名单;-----------------------------------------------------------------| Field | Type…

Html工具类

1 import java.io.IOException;2 import java.io.PrintWriter;3 4 import javax.servlet.http.HttpServletResponse;5 6 import net.sf.json.JSONException;7 8 9 public class HtmlUtil { 10 11 /** 12 * 13 * <br> 14 * <b>功能&#x…