c'è un errore di sintassi, non hai chiuso l'else, e io ho copiato e corretto dal tuo quindi è sbagliato anche il mio codice.

Così dovrebbe andare:

Codice PHP:
$oggi date("j F Y G:i");
$sito "http://www.miosito.it";
$ip "$_SERVER[REMOTE_ADDR]";
$browser "$_SERVER[HTTP_USER_AGENT]";
$to "hekate88@libero.it";
$soggetto "Modulo da $sito";


if(
trim($_POST['nome']) == "" OR trim($_POST['email']) == "" OR trim($_POST['messaggio']) == ""OR trim($_POST['a']) == "" ) {
echo 
"<font color=\"#FF0000\" face=\"verdana\" size=\"2\">[b]Tutti i campi sono obbligatori[/b]</font>";

} else {

$body  "Modulo inviato il $oggi da $ip - $browser \n\n";
$body .= "Nome: $_POST[nome] \nEmail: $_POST[email] \n";
$body .= "Oggetto: $_POST[a]\n";
$body .= "Messaggio: $_POST[messaggio]";

mail("$to","$soggetto""$body");