2 fisiere?
register.php?step=1
register.php?step=2
if(($_GET['step']==1)&&(formular 1 necompletat)) //afisez formular 1
if(($_GET['step']==2)&&(formular 2 necompletat)&&(formular 1 completat)) //afisez formular 2
sau folosesti o variabila sesiune si in functie de valoarea pe care o are afisezi un formular sau altul.
scriptul care face validarea si eventual inregistrarea in baza de date ar trebui sa fie separat: exec_forms.php
si aici pui header("Location: register.php"), salvezi mesajele in variabile sesiune si le afisezi in register.php. La action in forms ai ghicit ce trebuie pus. Utilizatorul nu va vedea decat pagina register.php si in plus poate da refresh cat vrea ca nu-i mai apare mesaj de la browser "retrimit datele?"
Fara sa reincarci pagina doar din php?

buna intrebare... ma duce cu gandul la server side / client side