That's not very clear. What is not working?
Is your form submitting at all? Prove it. Add this at line one.
What, does it really load itself?
Did this object instantiate? How can you prove it?
$mail = new PHPMailer();
Turn on error_reporting at the top of the page and set it to show all errors.
// temporary code you use on a dev server if you do not run with error reporting
// now do your var_dump
// now continue with your code
When developing, don't send the email at first, assemble all the variables and just echo them onto the page so they look like an email.
Add the actual emailing in last.
Does all your error handling work? Prove it by submitting errors one by one, then all at once and look carefully at a) var_dump($_POST) and b) your own error messages in response.
PS Can you also wrap any PHP code in square bracket tags like this [ PHP ] .. your code [ /PHP ] <- but WITHOUT the spaces. Cheers!