non esegui il controllo lato client

controlli tutto lato server

se qualcosa non va bene riporti alla pagina precedente
possibilmente conservando i dati coi quali puoi precompilare il form
per la consevezione dei dati puoi usare le sessioni o semplicemente un response

alla fine cancelli tutte le variabili

è una cosa un po' complessa ma così puoi fare controlli veri
e gestire il tutto "come ti pare"

linguaggi: asp, php.. quel che ti pare