Handling 2 forms in one controller

I wouldn't go with showing/hiding DIVs.. It's too problematic for me.

You can just make 3 actions (2 actions - for two forms and one to store data in DB and redirect), submit first form to second action, and second form - to third. When validation of first form in second action fails, just display first template (the same with second form). All submitted data could be stored in hidden fields so you don't need to mess up with sessions.