ASP.NET 防止使用者跳過登陸介面
來源:互聯網
上載者:User
1.在登陸頁面的檢查登陸成功碼後添加如下代碼
Session["UserID"] = txtUserID.Text.Trim();
或者
Session["UserID"] = "OK";
例如,在我的 Login.aspx.cs 的登陸按鈕響應事件中代碼如下:
if (BaseClass.CheckUser(txtUserID.Text.Trim(), txtPwd.Text.Trim()))
{
Session["UserID"] = txtUserID.Text.Trim();
Response.Redirect("Main.aspx");
}
else
{
Response.Write("<script>alert('使用者名稱或密碼錯誤');location='Login.aspx'</script>");
}
2.然後在每個頁面的Page_Load的開始處添加如下代碼:
if (Session["UserID"] == null || Session["UserID"].ToString() == "")
{
Response.Write("<Script language='javascript'>window.top.location.href='Login.aspx';</Script>");
}
例如在我的 Main.aspx.cs 的Page_Load程式碼封裝含如下內容:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["UserID"] == null || Session["UserID"].ToString() == "")
{
Response.Write("<Script language='javascript'>window.top.location.href='Login.aspx';</Script>");
}
if (!IsPostBack)
{
}
}
3.試試看,呵呵 ,,,