in protica con isset controlli se la variabbile e stata settata e puoi reindirizzarla a lla stessa pagina...

mail.php

<?php

@$destinatario = $_POST[destinatario] ;
@$oggetto = $_POST[oggetto];
@$mittente = $_POST[TuaMail];
@$corpo_messaggio =[corpo_messaggio];

if(isset($_POST['TuaMail'])){
mail ("$destinatario", "$oggetto", "$corpo_messaggio", "From: $tuoemail");
}
?>

<html>
<form method='post' action='mail.php' name='InvioMail'>
<input name='destinatario' type='text'>
<input name='TuaMail' type='text'>
<input name='oggetto' type='text'>
<textarea name='corpo_messaggio' cols='40' rows='10'>qui puoi scrivere il tuo testo</textarea>
<button type='reset'>
cancella
</button>
<button type='submit'>
invia
</button>
</form>
</html>

Questo è il codice per fare tutto in una pagina ...

la @ serve per non far comparire a video che le variabili non sono definite

.....

se serve altro chiedi...