上一篇:偶做的用户管理系统 >>
asp.net中的身份验证
我用的是基于窗体的验证,这也是最常用的,我只写一下摘要,源代码太长,但应该不影响理解代码.
web.config的修改:
<authentication mode="Forms" />
用户的登陆验证方法,:
这里有两个输入控件的,一个是user_tb,用来输入用户,一个是psw_tb,用来输入密码
private void Button1_Click(object sender, System.EventArgs e)
{
//用户登陆验证
string ip= System.Web.HttpContext.Current.Request.UserHostAddress ;
string user_name=user_tb.Text;
string user_psw=psw_tb.Text;
user_name=user_name.Replace("<","<").Replace(">",">").Replace(" "," ").Replace("‘’","‘");
user_psw=user_psw.Replace("<","<").Replace(">",">").Replace(" "," ").Replace("‘’","‘");
if(user_name!=""||user_psw!="")
{
SqlConnection myconn=new SqlConnection((string)ConfigurationSettings.AppSettings["connstring"]);//连接数据库
myconn.Open();//打开
string validate_Sql="select * from Web_User where User_Name=‘’"+user_name+"‘’and User_Psw=‘’"+user_psw+"‘’";
SqlCommand validate_com=new SqlCommand(validate_Sql,myconn);
SqlDataReader validate=validate_com.ExecuteReader();
string temp="";
while(validate.Read())
{
Session["user_name"]=user_name;
Session["user_flag"]=validate["User_Flag"].ToString();
temp="yes";
}
validate.Close();
if(temp=="yes")
{
user_tb.Text="";
psw_tb.Text="";
System.Web.Security.FormsAuthentication.RedirectFromLoginPage(user_name,false);
Response.Redirect("manage_index.aspx");
}
else
{
Response.Write("<script>alert(‘’您的用户名或密码错误!‘’);</script>");
return ;
}
user_tb.Text="";
psw_tb.Text="";
myconn.Close();
}
}
判断用户是否已经登陆:
private void Page_Load(object sender, System.EventArgs e)
{
//在这里判断用户是否已经登陆
if(!System.Web.HttpContext.Current.User.Identity.IsAuthenticated)
{
Response.Write("<script>alert(‘’您没有登陆!‘’);history.back()</script>");
}
string strUsername;
strUsername=System.Web.HttpContext.Current.User.Identity.Name+"<br>+System.Web.HttpContext.Current.User.Identity.IsAuthenticated";
lbIUsername.Text=strUsername;
// 在此处放置用户代码以初始化页面
}
用户的退出:
private void LinkButton1_Click(object sender, System.EventArgs e)
{ //退出
Session["user_name"]=null;
Session["user_flag"]=null;
Session.Clear();
System.Web.Security.FormsAuthentication.SignOut();
Response.Redirect("default.aspx");
}
下一篇:Asp/Asp.NET下,中文文件名的处理攻略 >>
相关文章:
- · Session使用注意事项
- · 《简单实现Crystal Report动态加载》补遗
- · 用ASP实现简单的繁简转换
- · 也谈绑定dropdownlist(3)
- · 内容管理系统的设计和选型
- · 一点准程序员工作经验总结
- · 给网站添加一个注册表 之 “类的应用”
- · asp分页的一个类
- · 提高网站在Google中的排名 ——面向搜索引擎的网站设计
- · 可缓存的CMS(网站内容管理器)系统设计
- · 把Web Control导出为Excel或Word
- · 如何实现立体的DataGrid和具有Windows效果的图片按钮
- · 一点ASP问题、差错和个人心得
- · 通过实例来实现split的理解
- · Asp.Net结合JS在图层上显示记录信息
- · Asp.net中如何处理一个站点不同Web应用通用Session的问题
- · css样式表的优先级别演示
- · 整理一个树型问题的解决方法
- · asp.net环境下的cmd命令执行
- · 常用javascript
- · 后台遍历一个HTML页面
- · 关于html上脚本语言的一点小释疑
- · 给网站添加一个注册表 之 “类的实现”
- · 给网站添加一个注册表 之 “类的设计”
- · 一个简单的上传类
- · 计数器的另一用法:自动切换首页图片
- · 性能微调提示
- · ASP.net中上传文件的操作
- · 对asp和asp程序员的一些话。。。
- · 英文版的Visual Studio.Net 2003 快捷键!
- · 如何定时运行ASP文件(转载)
- · 开发wap网站,还是碰到不少问题
- · 关于在浏览器中执行*.exe文件的深入探讨(z)
- · 在ASP 中实现ASP.Net 的DataGrid 功能(转载)
- · 在Web项目开发中使用BasePage类的巧用(继承System.Web.UI.Page)
- · 演示索引指示器的用法(C#)
- · ASP.NET中的ViewState
- · 蛙蛙学习asp.net总结(之一)
