- Posts: 6
- Thank you received: 0
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
GET parameter not processed for 2% of participants
- jonas_kl
- Topic Author
- Offline
- New Member
I have a strange issue: In my survey, 250 participants were able to start the survey, but some (6 so far) not.
This is the invitation I sent out:
Email template: @@SURVEYURL@@&855997X437X3980={ATTRIBUTE_1}&lang={ATTRIBUTE_2}
Resolved to: https://**company**/index.php/855997?token=JdVToxNA8ITqcf4&lang=en&855997X437X3980=KU&lang=en
What the blue GET parameter does is to pre-fill the first (hidden) question. From this, further questions are determined.
For the 6 participants, the GET parameter is not processed and the hidden question does not receive a value. Hence the survey is ended.
My mitigation attempts so far:
- I cannot see the mail logs, so I don't know if the URL is not resolved correctly.
- I have manually edited the participants' details: completed=no (was yes), uses left=3 (was 0).
- Then I manually generated the URL with the according token and entered it in my browser. The survey was not accepting the GET parameter any more, even not after clicking "exit and clear"
- I turned on "allow multiple responses or update responses with one token" and repeated step 3.
All of my attempts so far failed. Should I re-generate tokens for the affected users and just try to send the email again?
Since the survey in production with >2000 participants, I don't want to disturb them more than absolutely required...
Thanks a lot for any ideas!
Jonas
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11754
- Thank you received: 2761
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
- jonas_kl
- Topic Author
- Offline
- New Member
- Posts: 6
- Thank you received: 0
These steps helped me to reset the survey for all affected users:
1. Delete all responses with the affected tokens
2. Reset participant's details: completed=no, uses left=1
3. Ask user to clear browser cache & restart browser
4. Ask user to click on original invitation link again.
@Holch, good question -- in fact I already have these as custom attributes in the participants table.
Are you saying, I can achieve the same result better by using a different question type or scripting? It would be great if you could point me to the according manual page!
- jelo
- Offline
- Platinum Member
- Posts: 5038
- Thank you received: 1260
You have the attributes in the tokenlist. So holch is asking, why you don't access the value from the tokenlist. There seems to be no need to put a get parameter in the invitation which only makes the URL longer than needed. These user defined attributes can be accessed via EM.jonas_kl wrote: @Holch, good question -- in fact I already have these as custom attributes in the participants table.
manual.limesurvey.org/Survey_participant...ned_attribute_fields
The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users
- jonas_kl
- Topic Author
- Offline
- New Member
- Posts: 6
- Thank you received: 0
Maybe I'm slow, but HOW exactly can I use them? Let's say I have 3 different sample groups - how to separate their responses in the later evaluation?jelo wrote: These user defined attributes can be accessed via EM
Option 1 Conditionally displayed questions: I've already tested this successfully (e.g. Relevance equation: ((TOKEN:ATTRIBUTE_1== "group1"))), but I don't want to create every question 3 times (for each sample group).
Option 2 Hidden pre-filled question: The first question is a hidden text field that is pre-filled from token. E.g. default answer option is {TOKEN:ATTRIBUTE_1}. I tried it, but I'm getting this error message: "undefined variable"
Option 3 Token attribute added to response: This would be my preferred solution: For every completed survey, not only the responses are saved but also selected token attributes.
Are option 2 and 3 possible? I was not able to get that working...
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11754
- Thank you received: 2761
You can use them in EM to show and hide questions, you can display tem in the survey, you can pipe it in and you can export everything that is in the token table into the results table when exporting.
I am not sure what you are currently doing with the variable that you are passing via the URL, but anything you can do with a variable that is passed via the URL you should be able to do with a custom attribute.
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10148
- Thank you received: 3607
Also, have a look at setting it with an equation question an the Expression Manager assignment operator - manual.limesurvey.org/Expression_Manager...t_Operator_.28.3D.29
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11754
- Thank you received: 2761
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10148
- Thank you received: 3607
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- jelo
- Offline
- Platinum Member
- Posts: 5038
- Thank you received: 1260
What version/build of LimeSurvey is used?jonas_kl wrote: Option 3 Token attribute added to response: This would be my preferred solution: For every completed survey, not only the responses are saved but also selected token attributes.
You might provide a complete example of how the GET data is currently used in questions.
"Save selected token attributes" is too abstract for me. In your first post you stated :
What happens with the hidden question? If there is no interaction with the respondent, I wonder what purpose the additional get parameter has (only purpose I can think of is circumvention of anonymous mode with token)?hidden question does not receive a value.
You have user defined token attributes for every respondent. You have this data already matched to the respondent.
So what kind of transformation takes place in the survey, which you not already aware of ex-ante?
The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users
- tpartner
- Offline
- LimeSurvey Community Team
- Posts: 10148
- Thank you received: 3607
Maybe for filtering in the statistics view?So what kind of transformation takes place in the survey, which you not already aware of ex-ante?
Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
- jonas_kl
- Topic Author
- Offline
- New Member
- Posts: 6
- Thank you received: 0
I'm using version 2.55.2+161103jelo wrote: What version/build of LimeSurvey is used?
Ok, so this what I want to achieve:jelo wrote: You might provide a complete example of how the GET data is currently used in questions. [...] So what kind of transformation takes place in the survey, which you not already aware of ex-ante?
- I have 2000 participants divided in 3 sample groups. Sample group 1 and 2 will see the same questions (one is the treatment group, one the controll group), Sample group 3 will only be displayed a smaller subset of the questionaire
- All participants answer the same survey, but see different questions based on their belonging to one of the three sample groups
- For the questions that are asked to all 3 sample groups, I need to be able to compare the results (e.g. is sample group 1 more happy than sample group 2?)
This is how I implemented it:
- I am using a non-anoymized, token based survey.
- I could have created 3 separate surveys, but for maintenance reasons I wanted that all participants fill in the same survey. So I defined some questions to be hidden based on the condition of belonging to one of the groups. As I learnt from you, I should have used a token based relevance equation like ((TOKEN:SAMPLE_GROUP == "group1")), but I used a different way:
- I pre-filled the first question "which sample group do you belong to?" with the according value for every participant by generating URL links which contain this information. So Bob from group1 receives this URL [URL]...&855997X437X3980=group1[/URL] and Alice from group2 this: [URL]...&855997X437X3980=group2[/URL]
- This first question is hidden, so the participant will not recognize it. If it is not answered, a error message will be displayed and I need to manually get back to those participants.
- If the first question is filled, then the answer is used as a condition for all later questions, e.g. relevance equation for second question: ((855997X437X3980 == "group1")).
As I see it, even though my approach is far from being perfect, it still gets the work done - unless (and this is the reason for opening this thread) the URL GET parameter is not accepted. My feeling is that my approach is causing problems whenever a earlier survey has not been completed properly or there are cookies left, because this will interfere or alter the URL or something like that.
So I'd love to hear:
- What is the best practice to achieve my above described goal?
- It is possible to make these changes while running an active survey?