C'è un else sbagliato, eccoti la versione corretta.

Codice PHP:
<?php

// attraverso un if controlliamo che il form sia stato inviato 

if ( $_GET['inviodati'] == "ok" ) {



// recuperiamo i dati inviati con il form


$UserName $_POST['UserName'];

$mail $_POST['mail'];

$pass1 $_POST['pass'];

$pass2 $_POST['pass2'];


// ora controlliamo che i campi siano stati tutti compilati

if ( $mail == TRUE && $UserName == TRUE && $pass1 == TRUE && $pass2 == TRUE )  {


// controlliamo se il campo mail � stato scritto in maniera errata


if( $UserName == TRUE ){

$sql2 mysql_query("SELECT * FROM tabella_registrati WHERE nick = '$UserName'") or die ("Username già occupato");

$num_rows mysql_num_rows($sql2); 

$email eregi("^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$",$mail); 
if ( 
$email == TRUE ) {



// controlliamo se l'mail � presente gi� nel database

$sql mysql_query("SELECT * FROM tabella_registrati WHERE mail = '$mail'") or die ("Mail già occupata");

$num_rows mysql_num_rows($sql); 

if ( 
$num_rows == ) {

// ora controlliamo che le password inserite siano identiche

if ( $pass1 == $pass2 ) {


// infine criptiamo la password con md5

$pass_md5 md5($pass1);

mysql_query("INSERT INTO tabella_registrati
             (id , nick , mail , pass )
             VALUES 
             ('','
$UserName','$mail' , '$pass_md5' )") OR DIE(mysql_error());

// e inviamo una mail con la riuscita registazione

$messagem "Grazie per esserti iscritto.Ecco i tuoi dati: $UserName\r\nPassword: $pass1";


mail ($mail"Registrazione Farebury"$messagem"From: [email]Farebury@bury.it[/email]");

// messaggio da far visualizzare all'utente finale

echo "Complimenti registrazione effettuata con successo.";


} else {

echo 
"Le password non corrispondono";


}

} else {

echo 
"Indirizzo mail già utilizzato.";

}

} else {

echo 
"La tua mail non è idonea, per la registrazione.";


} else {

echo 
"Username utilizzato";
}
}else {
    echo 
"Tutti i campi sono obbligatori.";
}
    
}
Comunque ti consiglio di indentare il codice, è impossibile capire a quale if si riferiscono alcuni else. Infatti con una buona indentazione non avresti avuto problemi a trovare l'errore.