Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Preventing do an anonymous survey multiple times

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239865 by holch
SavedID is an ID that any survey response receives. You can find it in any response table. If someone opens the link and enters the questionaire, a SavedID is created for this response. It is a unique identifier in a survey for any response (completed or not).

And you wouldn't show it to anyone. You would pass it via the END URL and save it in the second response table (in a hidden questin). If this ID has been saved more than once in the second response table, you know that something fishy is going on. Or if there is an ID saved in the second survey that doesn't exist in the first survey you also know that something fishy is going on.

The rest Joffm explained.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Dezember
  • Dezember's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
1 year 2 months ago - 1 year 2 months ago #239878 by Dezember
 
Thanks for your reply!
Ok, I made this kind of endlink: www.limesurvey.org/test.php?var1={SAVEDID }
Actual link: survey.hcics.simtech.uni-stuttgart.de/in...ang=en&var1={SAVEDID }  
I tried to use the link at the end of the first survey several times (cheat 1, 2, 3)... and this ID kept changing. Or is it recorded somewhere else?
Last edit: 1 year 2 months ago by Dezember.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239881 by holch

and this ID kept changing.


Of course the ID is always changing, that is the correct behaviour and this is what you need. As explained before:

1. Whenever someone opens a survey link on Limesurvey, the system creates an ID for this respondent. This is the SavedID. This ID is unique for each respondent to a survey and as you can see it is counting up. This ID exists no matter if someone completes the survey or not.

2. If you pass this SavedID from your first survey to the second survey and save it in a hidden question, you have the possibility to match survey 1 responses with survey 2 responses. It will not prevent people from filling the surveys twice, but it will show you if someone is trying to cheat in survey 2 by using the link to the second survey more than once to increase chances (if there is the same ID more than once saved in the hidden question of survey 2) or if someone is trying to cheat in another way (e.g. if there is an ID in the hidden question 2 that does not exist as saved ID in the first survey). Maybe, you might want to add something else to that SAVEDID to make it no so easy to guess and cheat.

E.g. you take a hidden equation question and create a more complex semi random number. E.g. 3 random letters, than the SAVEDID and than 2 random letters or something like that. Save this in the hidden equation and then pass this ID on to the second survey in a hidden question.

Also not sure what your screenshot is showing. Is this from survey 1, is it from survey 2, what do you want us to see?

The first column in your screenshot is the Savedid from the survey you are showing us (12, 13, 14, 15, etc). Now, each of the two surveys has their own Savedid of course. But for your problem the relevant Savedid is the one from survey 1, you pass it on to survey two and write it into a (later hidden) text question so that later you can be able to compare and see if someone is cheating. You can't prevent cheating, you can only identify cheating easier afterwards.

E.g. if your system automatically provides a voucher to respondents in the second survey, all this effort is in vain, because they will already have the voucher code. You will only know afterwards if they cheated.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Dezember
  • Dezember's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
1 year 2 months ago #239882 by Dezember
Thank you very much for such deliberate answer!
it is Survey 2 on screenshot.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239885 by holch
Ok, but where did you save the Savedid from survey 1? Can't see it in the screenshot. The "ID" you can see, is the savedid from survey 2. You don't need this one. You need to save the ID that you are passing from survey 1 to survey 2 somewhere in survey 2.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Dezember
  • Dezember's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
1 year 2 months ago #239888 by Dezember
That's the Survey 1. Is it correct? You see here that responses in survey 1 ends on 11, while in Survey 2 - on 15.
I didn't do anything except changing the endlink. Should I do anything else?
Attachments:

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239889 by holch
I think you did not fully crasp the concept yet.

Survey 1 and survey 2 are completely independent surveys, their SavedIds purely depend on how often their link has been called. So of course the SavedID from Survey 1 and the SavedID from Survey 2 can be completely different.

In any way, in my opinion, if you pass an ID from survey 1 to survey 2, you could actually just ask the personaldate for the price draw in the first survey and you don't need the second one. Because if you can connect the two surveys via an ID, it is the same as asking the personal data in survey 1 already, annonymity wise it is the same. And you save yourself all this discussion here about how to pass an ID from survey 1 to survey 2.

But, to do so, what do you need to do?

1. In survey 1 you add an ID to the end url which calls survey 2
2. In survey 2 you need to add a question (usually text, which will be hidden after you tested everything and it works fine).
3. You need to read the ID passed on via the end url into your text question and store it there.
4. Now the ID that you passed from survey 1 to survey 2 should be stored as a "response" in that specific text question.

for testing, you can do it with anything, you cann just add a string instead of the Savedid, if this is confusing you at the moment. then you will see how things work. Because I have the impression that you do not fully understand what we are proposing here.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239890 by Joffm
As @holch already said "You do not need the SAVEDID of survey 2.
And we use the SAVEDID of survey 1, because this is a unique value.

Now:
You add "var1={SAVEDID} to the end-url which is the start url of the second survey.

Now you have to capture this value (var1) in your second survey - to be able to compare.
I think you did not read this carefully
[url] manual.limesurvey.org/URL_fields/en#Start_URL [/url]

The very first example
  • Code:
    http://ls.example.org/1234?QTEXT=prefilled
     : Fill in the question with code QTEXT with 'prefilled'
In your case it is not "QTEXT=prefilled", but "var1=[value of SAVEDID]"
Meaning: You have to create a question ("short text") with question code "var1"

Here you will find the value of the SAVEDID.
Now, if a respondent uses the end link several times to call the second survey you can recognize and remove this responses.
The same if someone manipulates the link and you find values that are not existing in the first survey.

Unfortunately you ignored the initial questions about your LimeSurvey version.
Because using the function "statCount" you may check if a value was entered already and screen out this respondent. But depends on your version.

Joffm 


 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Dezember
  • Dezember's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
1 year 2 months ago #239891 by Dezember
Sorry, it is LimeSurvey Community Edition Version 5.4.7

Should it be Start URL form in Text elements? Because I can not find such field on that page. Only End URL and URL description:

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239892 by Joffm
Meaning: You have to create a question ("short text") with question code "var1"

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Dezember
  • Dezember's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
1 year 2 months ago - 1 year 2 months ago #239894 by Dezember
Is that how it should be? 
Yes, it really sends the number to Survey 2 and if I use that link again it will be still tat number. 
But I can just change this number in the filed ...
Last edit: 1 year 2 months ago by Dezember.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 2 months ago #239895 by holch
That is why you HIDE this question after you tested it!

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The following user(s) said Thank You: Dezember

Please Log in to join the conversation.

Lime-years ahead

Online-surveys for every purse and purpose