ログイン状態を保持するチェックボックスがあるので、Cookie を使用して実装していますが、ログアウトするためのリンクが 2 つあり、それぞれをクリックしてもログインページにリダイレクトされないという問題があります。ログインページの読み込み時に、Cookie がいっぱいかどうかをテストしていて、常にいっぱいです。ログアウトするときに Cookie をクリアできないためです...バックエンドから関数を呼び出して、クッキーが起動しなかったので、助けてもらえますか?
Protected Sub btn_login_Click(sender As Object, e As System.EventArgs) Handles btn_login.Click
If Session("valid") Then
If (loginkeeping.Checked = True) Then
Dim mycookie As New HttpCookie("LoginDetail")
Dim username As TextBox = Page.FindControl("username_txtt")
Dim password As TextBox = Page.FindControl("passwordsignup")
mycookie.Values("Username") = username.Text.Trim()
mycookie.Values("Password") = password.Text.Trim()
'mycookie.Expires = System.DateTime.Now.AddDays(1)
Response.Cookies.Add(mycookie)
End If
Response.Redirect("Insert_Content.aspx")
End If
End Sub
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not (Response.Cookies("LoginDetail") Is Nothing) Then
Response.Redirect("Insert_Content.aspx")
End If
End Sub
asp.net:
<ul id="nav" class="fl">
<li class="v-sep">
<asp:HyperLink ID="logUser" runat="server" class="round button dark menu-user image-left"></asp:HyperLink>
<ul>
<li><asp:HyperLink ID="Myprofile" NavigateUrl="~/Profile.aspx" runat="server">My Profile</asp:HyperLink>
<li><asp:HyperLink ID="changePAss" NavigateUrl="~/Change_Password.aspx" runat="server">Change Password</asp:HyperLink></li>
<li><asp:HyperLink ID="logout" NavigateUrl="~/LOGIN.aspx" runat="server" onClick="logoutt">Log out</asp:HyperLink></li>
</ul>
</li>
<li><a href="LOGIN.aspx" runat="server" class="round button dark menu-logoff image-left" onClick="logoutt">Log out</a></li>
</ul> <!-- end nav -->
Public Sub logoutt()
Dim CookieName As HttpCookie = Request.Cookies("username")
CookieName.Expires.AddMilliseconds(1)
CookieName.Value = Nothing
Response.Cookies.Add(CookieName)
End Sub