![]() |
| ||
| Creating a Robust Logout System When someone logs out of our site, I want the previous page to not be accessible (or any of the other pages.) So far, when a user clicks the logout button on our site, I do the following: 1) I write to a file 2) erase the session cookie 3) disable the back button. When each page loads on our site, it checks to make sure the login file has the correct variable, checks to see if the session cookie has a value. The session cookie is checked by javascript upon page loading, the login file is checked on the server. Everything works but when someone hits the back button, there is enough of a delay where the page can still be viewed before the javascript redirects it. Is there a better way to do this so that when someone clicks back, the information is no longer there at all? Thanks! |
| ||
| Re: Creating a Robust Logout System Don't break the back button. The back button can take you back past your own page to pages visited before, so breaking it annoys people. You should probably do the cookie checking through Perl, not Javascript. That way, when your user hits the back button they either get a cached version of the page (they were authorized to view it in the first place), or they get a "You have been logged out" message. If you're really worried about cached pages like that, you can add a custom header that says the page expired sometime in the past. (1969 would be a good year.) |
| ||
| Re: Creating a Robust Logout System Ok, getting "this page has expired" to come up whenever they try to go back to one of our pages is exactly what I want to do. Now how do I actually do it? |
| ||
| Re: Creating a Robust Logout System Use the CGI module. http://search.cpan.org/dist/CGI.pm/CGI.pm#HTTP_COOKIES (For your convience, the link will show the HTTP cookies section first.) |
| ||
| Re: Creating a Robust Logout System Quote:
See here: http://computer.howstuffworks.com/question75.htm It usually best to use 00:00:01 Jan 1 1970 to make objects expire instantly. Just a helpful tip :) . Steven. |
| All times are GMT -4. The time now is 1:37 pm. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC