En local puede que no tengas XAMPP bien configurado para enviar correos, ¿Has hecho las pruebas desde el servidor? También es cierto que esos formularios te van a llegar al SPAM casi siempre, ¿Has revisado que no estén tus mensajes en la carpeta de SPAM?
Con respecto al código te recomendaría que separaras el formulario del envió en dos archivos, te dejo un ejemplo para que veas:
http://es.kioskea.net/faq/10887-como...ail-usando-php
Y si no quieres moverte de la web en la que estés simplemente utiliza un include de php:
http://php.net/manual/es/function.include.php
Un saludo.