|About QPL||Download||Documentation||QPL Version 4||FAQs|
1. What are the server requirements?
2. What is involved in setting up the server?
3. Is QPL compatible with the Zend PHP Accelerator?
4. I'm using a rented server which only gives me access to MySQL using PHPMyAdmin (or similar web-based tool) and not the mysql client program. How do I deploy a survey in this situation?
5. I've compiled my project and deployed the files on my web server in a separate folder, but when I click on the "Start Log In" button on the index.htm page, neither the log in page nor the questions are displayed. What's wrong?
6. How can I send email messages only to respondents who have never logged in?
7. In the History Log, I see this error occasionally: ERROR (qpl_db_get_info) Host location (HTTP_REFERER) error... Can you tell me what this about?
The requirements listed below are for the web server that will host the QPL questionnaire.
Specific configuration requirements are described in detail in the "Server Set Up" section of the manual which is installed on the questionnaire author's computer with the QPL development software.
An automated set up script is provided that walks you through all the set up procedures on a Linux server. If PHP and MySQL are already running on your server, it should only take a few minutes to complete the one-time installation of QPL files needed to run any number of QPL surveys. See the "Server Set Up" section of the manual for more information.
Yes. You do not have to do anything special to your QPL applications to run them on a server with the Zend Accelerator.
After building the PHP files for your project, you must edit the .sql file that was generated and remark-out the CREATE DATABASE and GRANT statements at the top of the file. You will need to use your service provider's web-based tools to create the data base for your project and grant rights to your project's user account. After doing this, you may upload the project files and run the modified SQL script.
First, make sure you have completed the one-time QPL server set up steps for that server. See the Help page called "Server Set Up." for more information.
Also see the Help page called "Installing QPL Project Files on a Web Server" for a list of steps for deploying in individual survey on the server.
From the symptoms you mention, it sounds like you have not run the main project SQL file yet. This file is generated when you compile your PHP files and it defines all the data base tables and default settings. (Clicking on the Start Log In button actually hits the database before the log in page is displayed -- so if you don't get the log in page that indicates that the database is not setup for the project yet.)
The problem may instead be that the MySQL user name and password you set in the qpl_config.inc file (that allows your questionnaire to access the MySQL database) does not match the user name and password that was set in your project's MySQL file that was automatically generated when you compiled your PHP programs. See step 6 in the Help file, "Installing QPL Project Files on a Web Server," for more information.
How this is done depends on whether you have preloaded questionnaire records for respondents into the data table or not.
If you have preloaded data table records, then you should use the built-in timestamp column, q_updated, to identify the cases that all have the same time stamp (i.e., the date and time you ran the SQL script to load the data base). Here, you need to first run a test at the MySQL client prompt to identify this value, and then use this value in the query you build on the Edit Message page (e.g. q_updated <= 20040316143021). If you know ahead of time that you will be sending messages specially to respondents who do not log in, you can make this work a little easier by setting q_updated to zero in your SQL script that loads the data table.
If you have not preloaded data table records, then you need to select the LEFT JOIN query option on the Edit Message page. In this case, a data table record is not created until a respondent logs in for the first time. This option automatically builds an SQL query that identifies which user accounts have no matching data table records. The LEFT JOIN query option was added in the 2004-03-16 release of the QPL software.
ERROR (qpl_db_get_info) Host location (HTTP_REFERER) error. User: Project: http://www....
This error message occurs when you set up your project using the 'URL for index.htm starting page' on the Default Project Settings page and some of your respondents have set an option on their browser that is incompatible.
Basically, QPL uses the location you set here to make sure that someone who is trying to access your login page for a project got there from your project's home page (index.htm) and not some other page they may have concocted for purposes of hacking your site.
If the browser is set to not return the HTTP_REFERER information to the web server (which just tells the server what page the respondent was viewing before requesting the log in page) or sends a location other than the one you set, then QPL treats this as a hacking attempt and does not display the login page.
In my experience here, generally less than 5% of my respondents had browsers configured this way. But, even with this small number, we have stopped using this test for our surveys. The hassle of getting the respondents to change their browser settings or use a different browser seemed to outweigh the security benefit to us, especially since these sites are only announced to the targeted respondents and are only up for a limited amount of time.
If you leave this field blank on the Default Project Settings page, then this test is not done and the respondents will get the login page whether or not their browser reports how they got there. Whether you choose to use the setting is should be based on your security concerns - - keeping in mind that there are few absolute guarantees on the Internet and there are some folks out there who don't play nice in the sandbox.
Send comments to Kevin Dooley.