怎样利用传值实现页面有权限的跳转

来源:百度知道 编辑:UC知道 时间:2024/07/05 12:47:32
我想做一个登录页面,其他页面只能登录后才能进去,如果想强行进入其他页面则自动跳转到登录页面,我在登录页面的后台代码中用session存储一个变量 Session["name"]=txtusername.text;
response.redirect("adminIndex.aspx");
在adminIndex.aspx页面:string username=Session["name"].tostring();
if(!IsPostBack)
{
if(username==null)
{
response.redirect(“login.aspx”);
}
else
{
msg.text="欢迎"+username+"来到管理页面";
}
}
但每次运行时似乎都跳过了username==null这个条件,直接执行msg.text="欢迎"+username+"来到管理页面",页面就报错,我是个菜鸟,刚刚开始学,不知道这样做行不行,哪里有错误,麻烦各位大侠帮帮忙

第一张方法:session 经常会丢失,不安全,你最好使用 mode="StateServer"模式,不易丢失。

第二种方法:建议你使用Form认证方式,不需要像你上述判断的。

具体实现:登录的时加入: System.Web.Security.FormsAuthentication.SetAuthCookie(this.txUsername.Text, false);

WEB.CONFIG加入:

<!--<authentication mode="Forms">
<forms name="gx" loginUrl="login.aspx"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>-->

不要加if(!IsPostBack)判断
每次加载页面的时候都判断就行了

if(Session["name"]==null)
{
response.redirect(“login.aspx”);
}

用.NET自带的FORM验证吧,很好用的