If you follow the rationale that sarahk listed (which I would also suggest) then you confirmation screen should also contain a <form></form> block, but all of the fields for your form should be type="hidden".
You can still echo all the field submissions onto your confirmation screen, but without the hidden form fields you will be unable to POST those values to your processing page once the confirmation screen is submitted.
The other suggestion I'd make from looking at your code is that you should not rely upon a users browser having retained the form field contents if the BACK function is used.
Use the form you created in the first place to send the data for processing to handle any user edits by having BOTH your form buttons (Confirm & Change/Reset) as:
<input type="submit" name="submit" value="Confirm Quote">
<input type="submit" name="submit" value="Change Quote">
then within your processing you could do something like the following:
<?PHP
if (isset($submit)) {
if ($submit == "Submit Quote") {
// THIS SECTION INVOKED WHEN FORM FIRST SUBMITTED
// DISPLAY CONFIRMATION SCREEN
};
if ($submit == "Confirm Quote") {
// COMPLETE FORM PROCESSING
};
if ($submit == "Change Quote") {
// Get rid of the assignment of $submit
// and allow the stored variable values
// to progress back to our raw script call
unset($submit);
};
};
if (!isset($submit)) {
// BUILD THE RAW FORM
// ASSIGNING value="<?PHP echo $variableX ?> to each input field
};
?>
By using unset($submit) we delete the entire variable $submit such that as the script progresses it then finds the section to complete if $submit doesn't exist. This of course is the form you built in the first place. To get the values back into the form, you simply need to echo the values af the relevant variables into the correct value="" parameters within your field areas.