Tired of spam clogging your Joomla contact forms? Contact - Valid Email is here to save the day! This free plugin ensures only legitimate emails make it to your inbox, filtering out junk like random@se or
Inbox Inspired
I thought the Joomla email form field actually checked for valid email address formats - but it doesn't. Upon closer inspection, as long as it has an @ symbol between 2 alphanumeric blobs - it's valid. The random content and invalid email address (@se isn’t a valid domain) were clear red flags. Someone was testing my form, possibly probing for vulnerabilities. My existing CAPTCHA stopped automated bots, but this manual submission slipped through because the Joomla contact form didn’t validate the email properly. That’s when I decided to build Contact - Valid Email.
How Contact - Valid Email Works
When a user submits a form, Contact - Valid Email springs into action, validating the email address in layers. It starts by checking the email format with PHP’s filter_var function, rejecting anything that doesn’t look right—like random@se, which isn’t a valid domain. If you’ve enabled the optional MX record check, it’ll query DNS to confirm the domain can receive mail, caching the results to keep things fast. Submissions that fail these tests—or match your blacklist—are stopped before they reach your inbox, while whitelisted emails sail through.
Contact - Valid Email Testing Order:
- Valid email (filter_var)
- Whitelist (email then domain)
- Blacklist (email then domain)
- Domain has a DNS MX record
- MX Blacklist
Please note: this plugin cannot verify if an email address is real or actively in use—only that its format is valid and the domain is real with an MX record in DNS.
v5.0.3
P
P
Configure It Your Way
Contact - Valid Email is all about flexibility. After installing it via Joomla’s extension manager, head to the plugin settings to make it your own. Enable the optional MX record check to verify email domains, or keep it off for faster processing. Set up white and black lists to allow trusted senders (like yourcompany.com) or block known troublemakers (like
Fancy a Demo?
Jump over to my contact page and attempt to send an email from a non-existent domain, or a domain that doesn't have an MX record (FYI: test.com does NOT have an MX record)
Setting Expectations
I'm getting a lot of tests, and that's OK. Please do test it. I reply to the tests I receive when a real email address is used.
This plugin cannot determine if your email address actually exists, it can only determine if the domain exists and that the domain CAN receive mail. It is entirely possible to put an invalid address into the form. This plugin prevents non-existent domains and domains with no MX record from being used in the contact form.
The tests performed are:
- The address is properly formatted - impossible addresses are rejected
- The domain is real and exists
- There is an MX record for the domain - domains that cannot receive mail (no MX record) are rejected
I have received criticism regarding dotless domains, which are valid in a LAN context. A LAN context doesn't present the same kind of spamming opportunity as a public website, and allows for tracking down offenders by IP address (where a LAN has significantly fewer address possibilities than the public internet.) A LAN setting implies known dotless domains, in which case you can just turn of MX filtering and utilize the domain whitelist to set the accepted domains. Easy.
A good email domain to test is example.com - which does not have an MX server.
Contact - Valid Email Features
- Validates email format instantly using PHP’s filter_var, catching invalid addresses like random@se
- Optional MX record check confirms the email domain can receive mail, with cached results for performance
- White and black lists let you allow or block specific emails and domains
- Block specific MX (email providers)
- Silent operation mode hides validation failure messages to thwart attackers
- Seamless integration into your contact forms
With Contact - Valid Email, you can stop spam in its tracks and keep your Joomla site’s contact forms secure and efficient. This plugin does the heavy lifting, so you can focus on what matters—connecting with real users, not battling junk submissions.
Ready to protect your contact forms from invalid emails and potential threats?
Download the Plugin
Contact - Valid Email 5.0.3203
Frequently Asked Questions:
What does the Contact - Valid Email plugin do?
The plugin validates email addresses submitted through Joomla contact forms, ensuring they have a proper format and, optionally, a valid MX record for the domain. It helps block spam by rejecting invalid emails (e.g., random@se) and non-existent domains while allowing legitimate submissions.
Does this plugin verify if an email address actually exists?
No, the plugin cannot confirm if an email address is actively in use. It checks if the email format is valid (using PHP’s filter_var) and, if enabled, if the domain has an MX record in DNS, meaning it can potentially receive mail.
What is the MX record check, and should I enable it?
The MX record check verifies if the email’s domain has a mail server capable of receiving emails. Enabling it adds stronger validation but may slightly slow form submissions due to DNS queries. Disable it for faster processing if you only need format validation. Results are cached (default 15 minutes) for performance.
How do the whitelist and blacklist features work?
Whitelists allow specific emails or domains (e.g.,
What is silent mode, and why would I use it?
Silent mode prevents error messages from being shown to users when validation fails, making it harder for attackers to probe your form’s logic. Enable it for enhanced security or disable it to provide feedback to legitimate users who need to correct their input.
Can I block specific email providers, like Hotmail or Gmail?
Yes, using the Blacklist MX feature, you can block email providers by their mail server’s FQDN or partial hostname (e.g., olc.protection.outlook.com for Microsoft-hosted domains like Hotmail). This prevents all emails from those servers from being submitted.
Will this plugin slow down my contact forms?
The plugin is optimized for speed. Basic email format validation is instant, and if the MX record check is enabled, results are cached system-wide (default 15 minutes) to minimize DNS queries and maintain fast form submissions.
Does this plugin work with all Joomla contact forms?
Yes, it seamlessly integrates with Joomla’s native contact forms. It validates email fields in real-time, ensuring only valid submissions reach your inbox, without requiring changes to your form setup.
What happens if I add an email or domain to both the whitelist and blacklist?
The whitelist takes priority. If an email or domain is on both lists, it will be allowed to pass validation, ensuring trusted senders aren’t accidentally blocked.
Can I test the plugin before using it on my live site?
Yes, you can try it on the developer’s contact page (linked below) by submitting an email with a non-existent domain (e.g., test.com, which lacks an MX record). You can also install it on a test Joomla site to experiment with its settings.
Is this plugin suitable for LAN environments with dotless domains?
Yes, for LAN setups with dotless domains, you can disable the MX record check and use the domain whitelist to allow specific domains. This accommodates LAN contexts where dotless domains are valid and spamming risks are lower.
How do I install and configure the plugin?
Download the plugin from richeyweb.com, upload it via Joomla’s extension manager (System > Install > Extensions), and enable it in System > Manage > Plugins. Configure settings like MX record checks, silent mode, and whitelists/blacklists in the plugin’s settings panel.
Is the plugin free, and where can I get support?
Yes, Contact - Valid Email is free. For support, refer to the documentation on richeyweb.com or contact the developer through the contact page. You can also test the plugin and share feedback using a valid email address.