我在Asp.net遇到会话问题 [英] I am having a session problem in Asp.net

查看:60
本文介绍了我在Asp.net遇到会话问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当用户登录然后注销时,我遇到会话问题。他们可以点击后退按钮重新访问他们所在的上一页。这是我的两个代码。



I am having a session problem when a user is logged in and then logs out. They can hit the back button to regain access to the previous page they were on. Here is my two codes I have.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;

public partial class Login : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {

        SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["PassConnectionString"].ConnectionString);
        con.Open();

        if (true)
        {
            SqlCommand level = new SqlCommand("select AccessLevel, Password from TableSecurity where EmailAddress = @EmailAddress AND Password = @Password", con);
            level.Parameters.Add(new SqlParameter("EmailAddress", TextBoxEA.Text));
            level.Parameters.Add(new SqlParameter("Password", TextBoxPW.Text));

            SqlDataReader reader = level.ExecuteReader();
            DataTable dt1 = new DataTable();
            dt1.Load(reader);

            foreach (DataRow dr1 in dt1.Rows)
            {
                int returnedLevel = Convert.ToInt32(dr1[0].ToString());
                if (returnedLevel == 1)
                {
                    Response.Redirect("CEOPage.aspx");
                }

                else if (returnedLevel == 2)
                {
                    Response.Redirect("IALOPage.aspx");
                }
            }
        }
        con.Close();
    }
    
}





这是退出代码:





This is the logout code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class IALOPage : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        Session["New"] = null;
        Response.Redirect("Login.aspx");
    }
}





我做错了什么或者我错过了什么?请帮助!!!



What did I do wrong or what did I miss? Please help!!!

推荐答案

试试这个:

Try this:
<script type="text/javascript" language="javascript">
window.history.forward(1);
document.attachEvent("onkeydown", my_onkeydown_handler);
function my_onkeydown_handler()
{
switch (event.keyCode)
{
case 116 : // F5;
event.returnValue = false;
event.keyCode = 0;
window.status = "We have disabled F5";
break;
}
}
</script>





代码落后:



code behind:

Session.Clear();
Session.Abandon();



结帐: Asp.Net中的安全漏洞 [ ^ ]



另请参阅:

三种禁用浏览器后退按钮的方法 [ ^ ]

使用Javascript限制用户按下后退按钮在浏览器中 [ ^ ]

<啊ref =http://www.4guysfromrolla.com/webtech/111500-1.shtml>彻底检查浏览器后退按钮 [ ^ ]

简单解决方案 [ ^ ]

禁用浏览器的后退功能从Asp.Net退出 [ ^ ]

注销后的浏览器后退按钮问题 [ ^ ]



。 。更多类似的答案 CP QA论坛 [ ^ ]


Checkout: Security Weakness in Asp.Net[^]

Also refer:
Three ways to disable browser back button[^]
Use Javascript to restrict user from pressing back button in browser[^]
A Thorough examination of browser back button[^]
Simple solution[^]
Disabling browser's back functionality on sign out from Asp.Net[^]
Browser back button issue after logout[^]

..and lot more similar answer on CP QA Forum[^]


在这种情况下禁用浏览器的后退按钮。请参阅类似主题的链接:

禁用注销后浏览器的后退功能 [ ^ ]

如何在asp.net注销后防止后退按钮 [ ^ ]

使用JavaScript在ASP.Net中的LogOut后禁用浏览器后退按钮 [ ^ ]



希望它有所帮助!

- -Amit
In that case Disable Browser's back button. Refer the links for similar threads:
Disabling browser’s back functionality after logout[^]
how to prevent back button after logout in asp.net[^]
Disable Browser Back Button after LogOut in ASP.Net using JavaScript[^]

Hope it helps!
--Amit






点击此链接:



http://www.mindstick.com/Blog/222/清除%20Cache%20in%20Asp%20net [ ^ ]


这篇关于我在Asp.net遇到会话问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆