two ways you can do it. firstly, you could have the form processed on the same page as the form. just set the form to post back to itself. so if the page is 'page1.php';
page1.php
<?php
if (isset($_POST['sent'])) {
// process the form
} else {
// show form
}
?>
of course you need to create a hidden field in the form called 'sent', whch will, when submitted, trigger the form processessing. this method will of course look exactly the same as having two seperate pages.
the second method (and the one i think your after), is to have the form validated client side using javascript. with js, you can make popups appear and point out required fields to the end user before the page is submitted.