Para validar tu formulario que todos los campos tengan algún valor usa condicionales y la función empty() que sirve para detectar si una variable tiene valor (distinto a 0 o NULL) y si a su vez está definida .. (todo esto bajo un IF y uno para cada variable que requieras que tenga algún valor).
Para redireccionar a una página tipo "gracias.html" o incluso "error.html" (caso de no pasar la validación o que el e-mail falle el envio ..)
Usa:
Código PHP:
header ("Location: pagina.xxx");
exit;
La función mail() devuelve un "true" si pudo enviar el e-mail y un "false" si no (no quiere decir que lo recibió el remitente .. sólo que "salió" de PHP el e-mail ..).
Usalo con estructuras condiciones tipo if()
Código PHP:
if (mail(.....)){
header ("Location: gracias.html");
exit;
} else {
header ("Location: error.html");
exit;
}
(lo mismo para las validaciones de tus variables redireccionando hacia tu error.html .. o error.php y le pasas una variable de control que indique el error exacto para dar una "frase" en consecuencia en tu error.php).
Un saludo,