.
sessions are easiest done with cookies. the other option would be to create a temp file (eg "$username$password.dat") and store that information, appending it from each page... but that requires a lot more work and is less efficient.
the less work your server has to do, the better.
most of the fields should be stored temporarily on the users machine (except for password fields), so using a back function should work fine. If you were going to have a back button (instead of using "javascript:history.go(-1)"), you might want to consider having something like:
if(isset($POST["password"])){
$password = $POST["password"];
}
if(isset($POST["email"])){
$email = $POST["email"];
}
etc...
on ALL of the pages, having the BACK button just take the user to the previous page, carrying the values with it.
whatever you find to be the most efficient, though, is the way you should go. Just giving you extra options 😉 .