io al tuo posto avrei fatto cosi:

if((!isset($_POST['mail'])) || (!eregi("^([a-z0-9\._-]+)(@[a-z0-9.-]+)(\.{1}[a-z]{2,4})$", $_POST['mail']))){
header("location:registrati.php?errore=502&type=ma il&campo=errata");
}
else{
if($_POST[nome]==false || $_POST[cognome]==false || $_POST[mail]==false){
header("location:registrati.php?errore=503&type=ca mpi&campi=vuoti");
}
else{
..... quello che deve eseguire.. per esempio aggiungere dati ad una tabella sql ecc...
}
}
spero di esserti stato utile... mentre per la funzione "sleep" non ho capito bene che cosa voglia fare