<?php
//controleer manier van verzenden
if($_SERVER['request_method']=='POST')
  {
  //controleer of alles is ingevuld. 
  //waarom gebruik ik hier geen isset/empty simpel de cijfer 0 is ook niets. 
  if(($_POST['var1'] != '') AND ($_POST['var2']==''))
     {
      //we mailen alles met je eigen mail script/functie/sql enz... Je kan dit bij alle mailformulieren doen. Wil je het uit breiden. Gewoon nog een "AND ($_POST['lalal']=='') voor het laatste haakje plaatsen )
     //we trapen de bezoekers door naar de bedankpagina
     header("location: volgende pagina");
     //we stoppende script
     exit();
     }
  else
     {
        //de controle van de variable
        if($_POST['var1']== "")
        {
            $error['1'] = 1;
        }
        if($_POST['var2']== "")
        {
            $error['2'] = 1;
        }
      }
}
//we weten nu als de "request via de post gaat dat er een error is.
if($_SERVER['request_method']=='POST')
  {
  echo '<div class="error">Er is een fout op getreden met het verzenden van de inhoud van je forumlier omdat je de volgende velden bent vergeten.<ul>';
  //echo alle fouten van boven. Je kunt gewoon meerdere fouten toe voegen
if(!empty($error['1'])){
 echo '<li>Je bent je naam vergeten</li>';
}
if(!empty($error['2'])){
 echo = '<li>Je bent je email vergeten</li>';
}
echo '<ul></div>';
}
//hier komt je mailformulier. 
echo '<form action="'.$_SERVER['php_self'];.'" method="post">\n';
if(!empty($error['1'])){
 echo '<div class="error">Je bent je naam vergeten</div>';
}
echo 'Naam: <input name="var1" value="'.$_POST['var1'].'" type="text"/>';
if(!empty($error['2'])){
 echo = '<div class="error">Je bent je email vergeten</div>';
}
echo 'Email: <input name="var2" value="'.$_POST['var2'].'" type="text"/>';
echo '<input type="submit" value="verzenden"/></form>';
?>