Mancano gli HEADERS,
prova il mio che funziona, metti i tuoi dati al posto dei miei

Codice PHP:
$headers  "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "From:$suoemail";

//E-mail del destinatario (cioè, io) 
$a "miaemail@virgilio.it";  
//Oggetto dell'e-mail 
$oggetto "Messaggio del Visitatore";

//TUTTI I DATI NEL MESSAGGIO con tutti gli item ($nome, $citta, ecc.)
$messaggio ="<html>
<head>
</head>
<body bgcolor="
yellow">
<font face=sans sharif size=4 color=0000FF>MESSAGGIO DEL VISITATORE :</font>




<font face=arial size=2 color=000040>Nome:</font>&nbsp<font face=arial size=2 color=000080>
$nome</font>


<font face=arial size=2 color=000040>Città:</font><font face=arial size=2 color=000080>
$citta</font>


<font face=arial size=2 color=000040>Email:</font><font face=arial size=2 color=000080><a href=\"mailto:
$suoemail\">$suoemail</a></font>


<font face=arial size=2 color=000040>Ip:</font><font face=arial size=2 color=000080>
$ip</font>




<font face=arial size=2 color=000040>Messaggio:</font>
<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"16\">
<tr>
<td><font face=arial size=2 color=000080>
$messaggio</font></td>
</tr>
</table>
---------------------------




</body>
</html>"
;
//Invio della mail 
mail ($a,$oggetto,$messaggio,$headers);