Okay, where to start… Not really sure. First you have a contact form called something.
This is the first page you showed to us. It has a form on it. This form is defined as:
Therefore, once the user fills in the inputs and presses your submit button it goes to the file named
"send_form_email.php" which I will guess is the second file. If you look at that code, you check to see
if the email is set. If not, nothing happens... But, you never check if the submit button was pressed.
You just check for the email. Your code is very mixed up. Hard to follow. First, all functions should be
set before any PHP code. Functions can be placed into If clauses, but, not a good practice. Your many
validations are complex and duplicated. Very nonstandard in my opinion. Also, you suppress the mail
function's error reporting. Never use the suppression of errors. That does not help. Remove the " @ "
at the beginning of the mail function and retry. See if you get an error. Another problem is that your
error system is really a big problem. If one of your validations do not work out, it calls a "dies()" code
function which displays a message and then stops the page from processing further. This will end the
page with no way back. The site dies. It would be much better to create a string with the errors appended
to it as they are found and then if it is empty, mail it if not empty display the error with the rest of the
page still there with a return button to the contact page. make a website DIE during it's use is quite silly!
So, lots to do to make it correct. First, move all your functions to right after the <?PHP tag and remove the
error suppression from the mail() function. ( @ ) And, retest and let us know. Repost your code and we
can help you figure the rest out…