[英]How to redirect or visit page if only there is a logged in user
我有彼此鏈接的三個頁面( Home, Register, Store
)。 主頁提供針對數據庫中保存的現有用戶的登錄選項。 如果僅成功登錄,則有人可以訪問“商店”頁面,否則單擊“商店”頁面不會執行任何操作(只是停留在同一主頁上)。
Home.aspx.cs:
protected void Button1_Click(object sender, EventArgs e)//login
{
SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\lab1.mdf;Integrated Security=True");
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SELECT * FROM userdata WHERE username='" + TextBox1.Text + "'";
cmd.Connection = conn;
//cmd.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
//Session["name"] = dt.Rows[0]["userName"].ToString();
Response.Redirect("Store.aspx?name=" + TextBox1.Text + "");
}
else
{
Response.Redirect("Register.aspx");
}
}
Home.aspx:
<p><a href="Home.aspx">Home</a> <a href="Register.aspx">Register</a> <a href="Store.aspx">Store</a></p>
Store.aspx:
<p><a href="Home.aspx">Home</a> <a href="Register.aspx">Register</a> <a href="Store.aspx">Store</a></p>
有兩種方法,一種是創建一個類並定義一個靜態字段,另一種方法是會話,但我希望使用會話進行登錄
首先,您將創建一個會話,例如
if (dt.Rows.Count > 0)
{
Response.Redirect("Store.aspx?name=" + TextBox1.Text + "");
Session["UserAuthentication"] = true;
}
現在檢查每一頁,或者.cs
文件中是否包含母版頁,添加代碼以檢查天氣UserAuthentication
是否為真,並記住將代碼添加到cs文件的Page_Load
中
添加支票
if (Convert.ToBoolean(Session["UserAuthentication"]) == false)
{
Response.Redirect("Register.aspx");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.