Contact Form Help
frequently asked questions
and troubleshooting
Frequently Asked Questions
How do I install the form on my website?
Read through the simple installation guide: Install the Free Contact Form.
My contact form is not sending any emails, how can I fix this?
This is the most common question and is due to a misconfiguration between your form and your hosting environment. But it's easy to solve.
All of our contact forms support sending emails through SMTP (Simple Mail Transport Protocol). To find out which settings you need to use, please read the contact form email smtp page which provides details for all the main hosting providers including (GoDaddy, Ionos, Bluehost, OVH, Hetzner, Namecheap, Liquid Web, SiteGround, DreamHost, InMotion, HostGator, and Hostinger).
Is your contact form GDPR compliant?
GDPR is the most important change in data regulation in 20 years and applies in the EU from 25 May 2018, you can read more about it at eugdpr.org.
We do not host your forms, process, or store your data. We provide you with source code to host and manage on your own. So you can be 100% sure exactly what is happening with your customers form submissions.
To answer the above question, It actually depends on what you plan to do with the information which people submit to you.For example, if you want to retain people's personal data, then you must make it clear to them why, and what you will do with it, you also need to provide them a way to accept this.
When I test your form on my local computer, the email does not come through, why is this?
Unless you have PHP running and access to SMTP, you will not be able to use the form on your local computer.
To test your form, please upload it to a test area of your Website, or set-up a working Web Server environment on your computer.
Have a look at the contact form requirements page for more details.
Do the forms support other languages?
Yes, our forms will work with any language (or character set).
This is a two part process, first simply specify your language in your HTML tag like this:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">if you're using XHTML. Or like this:
<!DOCTYPE html><html lang="en">if your using HTML.
You need to change the en part to your own language code. For example "nl" for Dutch, or "fr" for French.
Next specify the character set by using a Meta tag like this:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
You need to change the utf-8 part (if utf-8 is not working for you) to a character code that supports your language. For example, ISO-8859-1 (Latin-1) will support many languages including French and Dutch.
I moved the form to a new host, and now I get a syntax error when the form is submitted?
Modern versions of PHP have the 'short_tags' option switched off by default.
Some of our older scripts may use short tags.
To fix this is easy, simply open the form processing script in a text editor (notepad++ is perfect for this),
and run a find and replace for:
"<? " (not the quotes, include the space at the end) and replace it with:
"<?php " (do not enter the quotes in the search and replace!).
The emails don't come through, why is this?
Sometimes the emails can be trapped in your spam folder, please check.
Other times your hosting provider (or SMTP provider) may require that you configure your form's email FROM address to be one on your account.
For example, if your domain is example.com then set the FROM email address to something like sales @ example.com.
You may need to use the SMTP option (if your host has restricted access to the standard PHP emailing method), please see the installation page for details.
Finally, check that PHP is running on the Web Server where you are running the form.
When I submit the form I see a page full of code, why is this?
When a form is submitted, the form data should be processed by a PHP script on the Web Server.
In order for the PHP code to function properly, you need to make sure that your hosting account supports PHP. If you're not sure, ask your hosting provider.
Also, have a look at the contact form requirements page for more details.
When I submit the form the browser asks if I want to open or download a file, why is this?
See the answer to the previous question. In brief - PHP is not supported or enabled on your hosting account. Contact your provider.
Do I need anything special on my website or hosting account to use this?
Have a look at the contact form requirements page for more details.
Contact Form Troubleshooting
Contact form error types
There are two main types of error messages which may occur, ones which start with "Validation problems" and the others start with "Unexpected errors".
Validation problems:
The main reason for these is to do with the form fields validation settings not been met. For example, if you have an "Email" field using a validation type of "email", but the data sent through the form is not a valid email address structure. In this case, check your validation settings in your HTML, JS, and PHP configuration file (contact-form.config.php).
If you're using reCAPTCHA and the request was rejected, that will also show a message. This could happen if there is something wrong with your google reCAPTCHA settings, log into your account and check.
The next reason could be the email address used as the FROM or REPLY_TO are failing validation by the PHP Mailer class. Check your forms configuration file (contact-form.config.php) to see what is configured for these fields.
Unexpected errors:
These types of errors suggest that your form has been misconfigured in some way. This can happen if you've attempted to alter the forms fields and made a mistake somewhere. Or even more likely, you've entered incorrect SMTP details into the installer.
"There is a problem sending the email. Please try later."
This is the most common issue and related to the PHP mailing configuration. There could be dozens of reasons for this, so you will need to carry out some investigations to identify the problem.
Switch SMTP debugging on in your "contact-form.config.php" file. Look for this line: define('SMTP_DEBUG', 'NO'); and change the 'NO' to 'YES'.
Try your form again, this time you should get a longer error message. It may provide the reason for the error, for example, "Authentication Failure" which means your SMTP settings are wrong.
You can provide the debug information to your hosting supplier, administrator or SMTP provider and ask for help.
Once you've completed your investigation, please remember to switch the debugging setting off: define('SMTP_DEBUG', 'NO');
"Fields passed from the form don't match the configured ones"
This means that you've either change the field name and not updated it in the configuration to match. Or you've added new fields but not declared them in the configuration.
"reCAPTCHA value missing, the form may be misconfigured"
This means that the hidden field or the JS reference to reCAPTCHA is missing from your form.
"PHP needs to have file_get_contents() or curl_init() available to work with reCAPTCHA."
PHP has some core features disabled which are required for reCAPTCHA integration. You need to either enable one of them or ask your provider/administrator to do it for you.
"Email address EMAIL* is invalid"
The PHP Mailer class has reported that the email address configured is invalid. Check your forms configuration file (contact-form.config.php)