Home / Plugins / Gravity No Duplicates

Gravity No Duplicates

This add-on for Gravity Forms adds a hidden input with a random token to the form, and checks the POST request received for this token value to prevent duplicate submissions.

This would stop identical POST requests from being accepted for entry creation, like the ones that some browsers will send when the browser back or refresh buttons are clicked or when browser tabs are restored in mobile devices.

Repeated POST requests are responsible for most duplicates (if not all), so using the add-on should eliminate or drastically reduce chances of receiving duplicates.

To summarize, the workflow would be:

  1. Once the add-on is enabled each form would contain a hidden input with a random token as value.
  2. When POST request is received and handled by Gravity Forms, Gravity No Duplicates checks if this POST request has the token and if its value was used already in an existing entry for the form tied to the POST request.
  3. If the token is empty or there’s any form entry where the token value was used already, Gravity No Duplicates triggers a validation error to abort the submission.
  4. The form is displayed to the visitor showing the validation error message, which contains a link to the form page, suggesting the visitor to click the link to start a fresh new submission.

In certain cases the user could ignore the validation message and just click the Submit button, blocking this visitor’s behavior is not within the scope of this plugin functionality.

To put in another way, the add-on is intended to block automated resend of the same POST request data, not for blocking submissions voluntarily initiated by the visitor.

Requirements

  • PHP 7.0 or higher.
  • WordPress 4.9 or higher.
  • Gravity Forms 2.5 or higher.
  • Form page must be excluded from cache.

Usage

  • Install and activate it as you do with any other plugin.
  • Enjoy! No settings!

Note about Caching

The add-on functionality relies on a random token generated dynamically, so for obvious reasons caching the page where your form is embedded would prevent the add-on from working as expected. This is not a limitation of the add-on but the expected if you’re serving a static version of your page, which is the only reason to cache a page, you shouldn’t never cache pages where you expect dynamic data.

Most caching plugins provide you a way to exclude URLs from cache, this is for a reason, use it.

There are some web hosting providers using cache at server level and not providing their customers with an interface to exclude URLs from cache (e.g. WP Engine, Kinsta, …), you can still ask your host support staff to add the exclusion for you.

You can also use Fresh Forms for automated cache exclusion if you use any of the embedding methods and caching plugins supported (see Fresh Forms description for more details).

There are no reviews for this plugin.

“Gravity No Duplicates” is open source software. The following people have contributed to this plugin.

Contributors


Source link