| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7987 人关注过本帖
标题:session退出登录代码怎么写?
只看楼主 加入收藏
pietro
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-9-19
收藏
 问题点数:0 回复次数:9 
session退出登录代码怎么写?

我这么写怎么还是不能退出登录,为什么?

protected void LinkButton3_Click(object sender, EventArgs e)
{
Session.Abandon();
Response.Redirect("login.aspx");
}

搜索更多相关主题的帖子: session 代码 sender void Response 
2006-11-05 23:06
小海龟
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1068
专家分:4
注 册:2006-8-1
收藏
得分:0 
你用session("abc")="";这种形式试试看.

[bc09] 犯强汉者,虽远比诛!
2006-11-06 07:42
lian8088
Rank: 1
等 级:新手上路
威 望:1
帖 子:101
专家分:0
注 册:2006-8-21
收藏
得分:0 

if(Session["abc"] = null)
{
Response.Redirect("login.aspx");
}

不过这种方式不好,人家可以通过浏览器左上角的“后退”按钮返回。

下面的方式就可以避免这种情况:
if(Session["abc"] = null)
{
Response.Redirect("logout.aspx");
}

添加界面logout.aspx
在logout.aspx.cs的Page_Loge中写入以下代码:
private void Page_Load(object sender, System.EventArgs e)
{
在此处放置用户代码以初始化页面
Session.Remove("abc");
Session.RemoveAll();
this.Page.RegisterStartupScript("","<script>window.top.document.location.href='Login.aspx';</script>");
}


2006-11-06 09:38
發呆的小猪
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:362
专家分:0
注 册:2006-10-10
收藏
得分:0 
Session.RemoveAll();
把所有用的session全部清掉.

营口小猪 http://bbs.
2006-11-07 11:05
pietro
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-9-19
收藏
得分:0 
为什么还是不能退出啊 ?
谁能提供完整的代码啊?
2006-11-07 15:42
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
3楼的代码不是已经很完整了吗?

飘过~~
2006-11-07 21:34
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 
以下是引用lian8088在2006-11-6 9:38:11的发言:

if(Session["abc"] = null)
{
Response.Redirect("login.aspx");
}

不过这种方式不好,人家可以通过浏览器左上角的“后退”按钮返回。

下面的方式就可以避免这种情况:
if(Session["abc"] = null)
{
Response.Redirect("logout.aspx");
}

添加界面logout.aspx
在logout.aspx.cs的Page_Loge中写入以下代码:
private void Page_Load(object sender, System.EventArgs e)
{
在此处放置用户代码以初始化页面
Session.Remove("abc");
Session.RemoveAll();
this.Page.RegisterStartupScript("","<script>window.top.document.location.href='Login.aspx';</script>");
}

试了您的代码,仍然是能够通过浏览器左上角的“后退”按钮返回需要登录验证通过的页面。我的操作是这样的,先登录 Login.axpx 页面,通过输入正确的用户名和密码 验证通过后才能进入 index.aspx 页面,然后我通过左边的收藏夹列表点击了其它的网页,然后通过浏览器左上角的“后退”按钮,这时index.aspx 页面依然出现,不需先到 Login.axpx 页面通过验证的。如何解决这个问题啊?
index.aspx.cs 的Page_Load事件如下:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["logon"] != null)
{
if (Session["logon"].ToString() != "logonSuccess")
{ Response.Redirect("logout.aspx"); }
}
else
{
Response.Redirect("logout.aspx");
}
……
}
Logout.aspx.cs 代码如下:
private void Page_Load(object sender, System.EventArgs e)
{
Session.Remove("logon");
Session.RemoveAll();
this.Page.RegisterStartupScript("","<script>window.top.document.location.href='Login.aspx';</script>");
}

我想是不是因为在进入了index页面后,接着再打开其它网页的时候,并没有自动清空Session["logon"]引起的,导致通过浏览器左上角的“后退”按钮返回到index页面时,能通过Session验证?


我是2.0超级菜鸟,请多多教导!
2007-05-18 12:45
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 

我是2.0超级菜鸟,请多多教导!
2007-05-18 14:52
虾米仔
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-5-20
收藏
得分:0 

双击页面Global.asax
修改代码
protected void Session_End(Object sender, EventArgs e)
{
session["abc"]="";

}
退出登陆
protected void LinkButton3_Click(object sender, EventArgs e)
{
Session["abc"]="";
Response.Redirect("login.aspx");
}

进入index.aspx
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
if(this.Session["abc"].ToString()!="")
{

}
else
{
Response.Redirect("Login.aspx");
}
}

2007-05-20 14:39
bly
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-6-10
收藏
得分:0 
session["abc"]="";是什么意思啊
2010-06-10 15:21
快速回复:session退出登录代码怎么写?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.099920 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved