asp使用cookie实现登录记住密码功能
asp使用cookie实现登录记住密码功能
.aspx文件
<body>
<form id="form1" runat="server">
<div id="div1">
<asp:Label ID="Label1" runat="server" Text="账号:"></asp:Label>
<asp:TextBox ID="username" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label2" runat="server" Text="密码:"></asp:Label>
<asp:TextBox ID="password" TextMode="Password" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label3" runat="server" Text="记住密码"></asp:Label>
<asp:CheckBox ID="checkbox" runat="server" />
<br />
<asp:Button ID="ButtonLogin" runat="server" Text="Login" OnClick="btnClick" />
</div>
</form>
</body>
aspx.cs文件
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//如果cookie中的账号密码值不为空,则显示出上次保存的账号密码信息
if (Request.Cookies["Name"] != null && Request.Cookies["Password"] != null)
{
this.username.Text = Request.Cookies["Name"].Value;
this.password.Attributes["value"] = Request.Cookies["Password"].Value;
}
}
}
protected void btnClick(object sender, EventArgs e)
{
//如果没有选中记住密码框,则不保存账号密码到下次使用
//-1为过期的时间
Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1);
Response.Cookies["Password"].Expires = DateTime.Now.AddDays(-1);
//如果选中记住密码框
if (checkbox.Checked)
{
//将用户名和密码保存在cookie中,设置有效期7天
Response.Cookies["Name"].Expires = DateTime.Now.AddDays(7);
Response.Cookies["Password"].Expires = DateTime.Now.AddDays(7);
}
//将账号密码值的信息保存到cookie中
Response.Cookies["Name"].Value = this.username.Text.Trim();
Response.Cookies["Password"].Value = this.password.Text.Trim();
}
css样式代码
<style> #div1 {
width: 400px;
height: 400px;
font-size: 30px;
background-color: #9ef5ef;
/*内部文字垂直水平居中*/
text-align: center;
line-height:80px;
/*div相对页面垂直水平居中*/
margin:auto;
position: absolute;
top:0;
left:0;
bottom: 0;
right: 0;
}
#Label1,#Label2,#Label3 {
width: 100px;
height: 30px;
font-size: 20px;
}
#username,#password {
width: 200px;
height: 30px;
font-size: 20px;
margin-top:10px;
}
#checkbox {
width: 25px;
height: 25px;
margin-top: 5px;
}
</style>
实验结果
在输入账号密码之后,当您点击记住密码复选框进行登录,在下次进行登录时,页面会自动保存账号密码信息,如果没有选择记住密码复选框则不保存。