Hola
Jope recien salido de sacarme el graduado escolar y tengo que explicarle esto a un profesor

=)
Vamos a ver, ese error de PHP es por que no se entan enviando los campos nombre y mail por metodo POST.
Se me ocurre que a principio del script pongas estas lineas
Código PHP:
echo "<pre>";
print_r($_POST);
echo "</pre>";
Si se recibe contenido por metodo POST esas lineas tendrian que imprimir en pantalla el contenido de POST.
Si aparece algo asi:
Array(
)
Es que no se esta enviando el contenido y el fallo está en el codigo que envia el Flash, osea, aqui:
form1 = new LoadVars();
form1.nombre = this.nombre.text;
form1.nombre = this.email.text;
form1.sendAndLoad("enviar.php",form1, "POST");
De todas formas, no entiendo mucho de ActionScript que creo que es el lenguaje de flash pero fijate en esto:
form1.nombre = this.nombre.text;
form1.nombre = this.email.text;
has utilizado form1.nombre 2 veces para asignar contenido diferente, eso esta bien¿?