Jaja que no te de verguenza. Es la mejor forma de aprender.
Que la función mail() quede al final del script. Después de hacer todo el proceso de validación y demás recién se envía el mensaje. (Lo único que debería estar después es el haeder)
La función puede quedar al final, o en cualquier lugar.
Pero ésta se ejecuta con el foreach
Código PHP:
foreach($_POST as $k=>$v) {
ValidarDatos($v);
}
que lo que hace es pasar por la función ValidarDatos() cada variable que entra por POST. Si la ponés después de mail(), realizará la comprobación después de haber enviado el email y si encontró algo que no debe mandar el email ya va a haber sido enviado.
¿Se entiende?
Saludos