Hi !
I have been looking through these forums about the "Page has expired" issue, and found a lot of people worrying about this error message. A few solutions are proposed, like for example using the GET method instead of POST, or submitting to the same page and then using a header() to redirect.
What I want to do is the opposite : I want to PREVENT any browser from reloading the pages in which form data has been posted, or at least prevent them from reposting the forms' data. A simple example :
user 1 logs in to a restricted area, using a POST form to submit their username and password, then logs out.
user 2, on the SAME station, clicks the BACK button several times, until he reaches the FIRST restricted page user 1 has seen.
the usual message (warning, page has expired...) is displayed, prompting user 2 to click "refresh" to post the data again. The result is : user 2 can repost user 1's identification info, and log in on their account !
I know a simple workaround is to close all the browser's windows, but i think it's not very reliable. I'd like to find a better way to prevent this "form resubmit through refresh", otherwise the "log out" functionnality would be completely useless...
I'm convinced this problem is quite trivial for you security experts out there, and i'm frustrated not to be able to find the solution somewhere.
Thanks for any help.