NZ_Kiwis;11014357 wrote:
Would no caching fix this issue?
I'd start by fixing the coding issues and errors and see if that has any effect. But by all means, check what cache headers are set, and try changing them to see what happens. Just be aware of a few things
1. Do use http headers. Some browsers might respect meta, but I don't believe any proxy ever will since they have no reason to inspect the content sent.
2. If you have any kind of private information which for example is served based on session information after a login, the same URL might give you and me different inforamtion. If this is the case, you can not allow proxies to cache anything. Otherwise my information may leak to other users, and their information might leak to me.
But if you want to be certain nothing is cached, the following cache headers should be set
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
In particular, the no-store directive might be of interest here, since there is a difference between serving stored content from a previously visited page as that page is revisted and serving cached content when that same page is requested a second time. That is, the store is intended to be used for revisits in history, while a new request to a previously visited page would not use the store.
NZ_Kiwis;11014357 wrote:
bookingformpage1.php
if(!isset($_SESSION['T1']) { echo $_SESSION['T1']; }
Do you have error reporting turned on? Including notices? This should either show nothing at all or show nothing at all along with an E_NOTICE.
NZ_Kiwis;11014357 wrote:
submit.php
$_SESSION['T1'] == $_POST['T1'];
Are you aware that this statement does nothing at all. Or to be more precise, that statement has no side effect. Thus, the state of your application is exactly the same before and after that line is executed. So wether you execute that line or not doesn't matter, except that it does take the tiniest amount of time to have it there.