Session logout problem
-
Hi, I m working on an asp.net c# website. I have used session to maintain user login. Now the problem is when user clicks logout I have removed the session variables value and redirected user to a default page. Now when the user clicks back button of the browser he is again inside that website which is supposed to be used after login. Is there any solution for this ? Regards
Vijay V. Yash Softech
Put this in your Page Load event : Response.Expires = 0; Response.ExpiresAbsolute = DateTime.Now;
-
Put this in your Page Load event : Response.Expires = 0; Response.ExpiresAbsolute = DateTime.Now;
Apologies to bother you but can you please brief me where? On which page? Regards
Vijay V. Yash Softech
-
Apologies to bother you but can you please brief me where? On which page? Regards
Vijay V. Yash Softech
You can place it on all the pages you are using in the Page Load event. (probably could to this in the HttpModule) protected void Page_Load(object sender, EventArgs e) { Response.Expires = 0; Response.ExpiresAbsolute = DateTime.Now; if (Session["User"] != null) { //some other code... } else { //Redirect to Login Page } } The on the Logout button if the Sessions are "Abandoned" and the user tries navigating Back to this page he will be re-directed (asked for login credentials)... Hope this helps
-
You can place it on all the pages you are using in the Page Load event. (probably could to this in the HttpModule) protected void Page_Load(object sender, EventArgs e) { Response.Expires = 0; Response.ExpiresAbsolute = DateTime.Now; if (Session["User"] != null) { //some other code... } else { //Redirect to Login Page } } The on the Logout button if the Sessions are "Abandoned" and the user tries navigating Back to this page he will be re-directed (asked for login credentials)... Hope this helps
thanks for the reply. But this too is not working. I have added the code in the page load and on logout have used Session.Abandon(). After logout I tried back button its again in. Only IE is not allowing the user to go back in but other browsers like Mozilla, Opera are allowing to go back in however I cannot do anything but I dont want user to go in after loggin out.
Vijay V. Yash Softech
-
thanks for the reply. But this too is not working. I have added the code in the page load and on logout have used Session.Abandon(). After logout I tried back button its again in. Only IE is not allowing the user to go back in but other browsers like Mozilla, Opera are allowing to go back in however I cannot do anything but I dont want user to go in after loggin out.
Vijay V. Yash Softech
One thing I noticed that page load is not called when User presses the back button.So this means the page load is not called when a browsers back button is pressed. And thus the code to check Session value is not called and the user is in. May be I have to use the Session code on any other page function. Can anyone suggest me on this? Regards
Vijay V. Yash Softech
-
One thing I noticed that page load is not called when User presses the back button.So this means the page load is not called when a browsers back button is pressed. And thus the code to check Session value is not called and the user is in. May be I have to use the Session code on any other page function. Can anyone suggest me on this? Regards
Vijay V. Yash Softech
I noticed that too.. Mozilla is a strange animal :) What I found that could possibly work is to add javascript function on the document Onload event... onload="CheckSessions()" then through your javascript function click some hidden server button to re check the sessions (this will cause a Postback). function CheckSessions() { document.getElementById("btnCheck").click(); } This is a bit of a hack but it works... javascript fires even after navigating back... PS: I noticed that the navigating doesnt call the Page_Load or Page_Init :(
-
I noticed that too.. Mozilla is a strange animal :) What I found that could possibly work is to add javascript function on the document Onload event... onload="CheckSessions()" then through your javascript function click some hidden server button to re check the sessions (this will cause a Postback). function CheckSessions() { document.getElementById("btnCheck").click(); } This is a bit of a hack but it works... javascript fires even after navigating back... PS: I noticed that the navigating doesnt call the Page_Load or Page_Init :(
ooops that will go into an infinite loop :-O
-
ooops that will go into an infinite loop :-O
I think making Session.Abandon and checking for some session value from the Application.BiginRequest event will do the purpose. Check if session exists, or otherwise redirect to login screen...
Abhishek Sur
-
I think making Session.Abandon and checking for some session value from the Application.BiginRequest event will do the purpose. Check if session exists, or otherwise redirect to login screen...
Abhishek Sur
This lead to an infinite loop. Regards
Vijay V. Yash Softech
-
I noticed that too.. Mozilla is a strange animal :) What I found that could possibly work is to add javascript function on the document Onload event... onload="CheckSessions()" then through your javascript function click some hidden server button to re check the sessions (this will cause a Postback). function CheckSessions() { document.getElementById("btnCheck").click(); } This is a bit of a hack but it works... javascript fires even after navigating back... PS: I noticed that the navigating doesnt call the Page_Load or Page_Init :(
this is not working for me. Can you suggest any other alternate? IE works fine I have problem with other browsers. I am using cookies to maintain login. Regards
Vijay V. Yash Softech