Hola que tal =D, bueno, a mi parecer el problema está en la configuración de tu servidor. Puedes hablar con tu hosting para pedir más información.. La verdad te respondo para ayudarte a hacer que el campo correo sea obligatorio. Lo que tendrías que hacer es poner estas líneas al principio de tu página donde procesas el envio:
if ($_POST['correo'] == "") // Si la variable de correo está vacia entonces muestra un mensaje de error.
{
echo "El campo de correo es obligatorio".
exit;
}.. Ahora yo te recomendaría que usaras una expresion regular para comprobar además si el formato del correo es correcto (
nombre@host.com), con un código así:
if (!ereg("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $_POST['correo']))
{
echo "Esta no es una dirección de email válida.";
exit;
}
/*
Con ^[a-zA-Z0-9_], le estamos indicando que al principio (^) de lo escrito debe ir algún caracter que sea alguna letra, piso (_), o número (a-zA-Z0-9_), luego separado por un +, le indicamos que debe venir un @ seguido de algun caracter de texo, número o guion (\-). Se pone una barra inclinada antes del guion para que php no crea que ese guión significa que estamos haciendo otro grupo (a-z por ejemplo). En programación se llama "escapar al caracter". Luego debe venir un punto (\.) (de nuevo usamos la barra invertida) seguido del com, net, etc.. como puedes ver el $ significa que debe terminar con eso ajuro, y el ^ que debe empezar con eso.
Eso es un poco la explicación de lo que hice, y como sé que soy muy enredado te recomiendo ir a http://www.php.net/ereg si quieres saber más sobre esta función.
*/
Saludos y espero que te haya podido ayudar en algo