管理员登录
1、 实验目的:
1、能够使用三层结构的思想实现管理员登录功能
2、使用第三方控件验证码控件实现登录界面的验证
3、拥有良好的编程习惯、拥有分析问
、解决问题的能力
4、拥有独立思考意识、勇于克服困难的素质
2、 实验内容
用户打开adminlogin.aspx页面,输入相应的信息(用户名、密码和验证码),单击[登录]按钮时,首先判断验证码是否正确,如果正确,则判断该用户名存在否,如果存在判断角色是否为管理员,如果是管理员则跳转到indexadmin.aspx页面,否则提示改用户不是管理员;如果改用不存在,否则弹出用户名或密码错误提示框;如果验证码错误则提示验证码错误。
3、 实验步骤
1、 新建一个AdminLogin.aspx页面,
页面
2、 编写代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using MedicineBLL;
using MedicineDAL;
using MedicineModel;
namespace Web
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
SerialNumber1.Create();
}
}
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
if (!CheckCode())
{
Response.Write("");
}
else
{
string UserName = TextBox1.Text.Trim();
string UserPwd = TextBox2.Text.Trim();
User user;
if (UserManager.UserLogin(UserName, UserPwd, out user))
{
if (user.Role == "0")
{
System.Web.Security.FormsAuthentication.SetAuthCookie(user.UserName, false);
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, user.UserName, DateTime.Now, DateTime.Now.AddMinutes(30), false, "admin");
string hashticket = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hashticket);
Response.Cookies.Add(cookie);
if (Request["ReturnUrl"] != null)
{
Response.Redirect(Request["ReturnUrl"]);
}
else
{
Response.Redirect("~/Medicine.aspx");
}
}
else
{
Common.Message.RegScript(this, "你不是管理员,无权访问!");
}
}
else
{
Common.Message.RegScript(this, "用户名或密码不正确,请重新填写!");
}
}
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
SerialNumber1.Create();
}
private bool CheckCode()
{
if (SerialNumber1.CheckSN(TextBox3.Text.Trim()))
{
return true;
}
else
{
SerialNumber1.Create();
return false;
}
}
}
3、 }
4、 运行页面
4、 实验
管理员登录界面是管理员专用的界面,普通用户没有权利登录查看,所以在设计登录按钮时要验证是否是管理员用户,本系统设计的是User数据表中的Role =0为管理员否则提示你不是管理员,无权登录,验证码使用的是第三方控件SeriaNumber,这是一个验证码控件,添加控件时先添加引用,再添加到工具箱中,这样就可以正常使用了。