Passing Information In and Out of a Survey (LHS 9.13 or earlier)

Last Updated: 24 Oct 2013Hits: 16637
I’ve purchased a bank of respondents from a third-party panel provider and they want me to capture a unique 12-character parameter called panelID which they will pass-in to my survey and that I’ll need to store and pass back to them at the successful (or unsuccessful) conclusion of the survey. They gave me the following link as an example. http://www.yoursurveylink.com?panelID=<#value of panelID#>

Note: If you are using Lighthouse Studio 9.14 or later, please this article

Lighthouse Studio (formerly SSI Web) offers a couple of ways to pass dynamic information both in and out of its surveys. The most popular method is to (1) store a respondent’s unique id into a password field, and (2) store additional information (if any) into pass-in fields. Then, if the respondent leaves the survey early but wants to resume it later by re-clicking their link, a unique password will restore their answers and return them to the last point in the survey.

Step 1. In the “Write Questionnaire” dialog bog, open up your Start question (which has a “Questionnaire Access and Passwords” question type) and click on the “Password Fields” tab. Create a field name called pid and select the “text” data type unless you know for sure that the panelID will be a unique number from 1 to 999,999,999.

Step 2. Click on the “Settings” tab. Select the checkbox which will allow respondents to define their own passwords. In our example, the password will be the panelID (pid) which is generated for each respondent by the panel company.

Step 3. If the panel company wants to pass along additional information, such as a username or an account ID, you can create additional “pass-in variables” to store this information. Click the “Pass-In Fields” tab and define the field name and data type for each item. This information will be stored in the respondent’s data record and is available for your use throughout the survey. The data stored within each variable does not have to be unique to each respondent.

Step 4. In the “Write Questionnaire” dialog box, create one or more “Terminate/Link” questions. Your panel provider may want you to redirect respondents to a specific link for successful completions and another link for unsuccessful completions (such as those who were disqualified or over quota). After you name your question, click the “Settings” tab and select the “Link to a Questionnaire or Website” checkbox. Type in the URL provided by the panel company, such as:

http://www.panelprovider.com/projects/end?panelID=[%pid%]

Notice the question mark in the link. The left side of the question mark designates the location of the panel provider’s webpage. The right side of the question mark designates the content that is passed-out to the panel company. The content segment appends to the link the variable name specified by the panel provider, panelID, and assigns it the value which was originally passed-in to Lighthouse Studio and stored in the password field called pid. Any variable/question within Lighthouse Studio can be passed along in this fashion as long as it is bounded by the [% and %] symbols.

If the panel provider has additional information they want passed-out, then you would continue to add it to the end of the link using the & symbol followed by the desired name=value pair. For example, in addition to the panelID, suppose the panel company wanted a 1 to be assigned to the variable rst if a panelist successfully completed the survey, and a 2 assigned to rst if the panelist unsuccessfully completed the survey. Below is an example of how you would pass along the value of 1:

http://www.panelprovider.com/projects/end?panelID=[%pid%]&rst=1

Step 5. Finally, you’ll want to give your panel provider the location of your survey on your server so they can create the personalized links for their panelists. Notice that the respondents will need to be directed to the ciwweb.pl file located in the cgi-bin directory on the server. This permits respondents to bypass the initial “Start” question in your survey and automatically insert the data into their response record.

For example, let's imagine that we wanted to link to a Lighthouse Studio study which you’ve named insight66. You’ve uploaded the files to the www.mysurveyserver.com server in the gonzo study folder subdirectory, with a panelID assigned by the panel provider of “A6Z9”. The web address (URL) would be:

http://www.mysurveyserver.com/gonzo/cgi-bin/ciwweb.pl?studyname=insight66&pid=A6Z9

Please make sure you test out the link before you send it to the panel provider. To test it, type in any information you want into the pid variable at the end of the link. After you complete the survey you may use the Lighthouse Studio Admin module to review the data to see if the information was collected and stored properly.

Encoding Special Characters

If you want to include spaces or non-alphanumeric characters into a “Termination/Link” URL, you will want to use the SSI Script function, EncodeForUrl( ). For example, email addresses contain the @ symbol. If you need to pass-out an email address stored in the Lighthouse Studio emailaddress field, and the panel company wants it to be named, myusername, it should be coded in the following manner:

http://www.panelprovider.com/projects/end?panelID=[%pid%]&myusername=[%EncodeForUrl(emailaddress)%]

Example Movie

For a detailed walk through on how links work see the "How to Link Into a Survey" video in the Support > Videos section or by clicking here: https://www.sawtoothsoftware.com/resources/videos/lighthouse-studio-how-to-link-into-a-survey