da PHP puoi anche usare:

$return_URL = $_SERVER['HTTP_REFERER'];
header("Location: $return_URL");
exit;

dove HTTP_REFERER è una variabile server che memorizza il referer per la pagina corrette.

però il mantenere i valori compilati dal form dipende da browser...

mozilla per esempio mantiene explorer no..

io di solito memorizzo i miei $_POST['var'] in $_SESSION e li richiamo come value nel form.. una volta terminata la procedura riazzero quei valori di sessione...