I'm looking for advice on how to make a survey for my Joomla production (3.6.4) site.

A key requirement is to restrict respondents to only taking the survey once (i.e. preventing 'ballot-box' stuffing).

I looked in Joomla Extension Directory, but I haven't found a solution for my functionality, so I'm thinking about developing a simple plugin or module to integrate my form with tokens.

I came to the conclusion that the best solution to protect against re-examination would be token codes generated and delivered earlier for my respondents.

I thought about three solutions:

  1. PHP code for checking simple txt file if code exist, and erase it after sending answer.
  2. Create a table in MySQL for codes and checking if code was used.
  3. Use something similar to captcha.

This will be my first deeper programming in Joomla so any advice or solution will be very helpful for me.

Thanks for your attention.

  • Will your respondents be logged in or not?
    – TryHarder
    Dec 14 '16 at 6:39
  • No, it's anonymous survey Dec 14 '16 at 11:51
  • Beside the technical options you should think of the prototecion of data privacy too. I don't know you complete scenario but in case you plan to distribute this extension there might be some users (e.g. from countries within the EU) which need to ask the visitor before(!) any "fingerprint" or IP or cookie is saved.
    – Arno
    Nov 17 '19 at 19:04

Some more ideas:

  • Save a cookie in the user's browser.
  • Get users IP address and store in BD.
  • These are good suggestions, but they can be circumvented. Cookies can be deleted and IP addresses changed. Similarly, you could probably use localstorage, but I think it has the same kind of limitation ( and the user can refuse to allow you to use localstorage). I recently came across an interesting method used by google. It used html5 canvas image data to fingerprint and track the user. NoScript could probably stop that though (I'm pretty sure Tor blocks this).
    – TryHarder
    Dec 14 '16 at 6:48
  • 1
    It is great, see this: browserleaks.com/canvas#how-does-it-work Dec 14 '16 at 10:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.