/images/quizz-tumb-freshmeat.png

Software ↑     Download Documentation Modules Screenshots Samples

Q U I Z Z - 1.2.3

Welcome to the home of the quiz and test web application q u i z z. This is a comprehensive perl based solution for online surveys, course tests, quiz-based games or web polls.

q u i z z features several types of questions:

Single choice questions
The user can choose one answer from a list of choices. There is no limitation of possible choices but only one answer is the correct one and must be selected by the user to achieve success.

Multiple choice questions
The user can choose one or more possible answers from a list of choices. There is no limitation of possible choices. One or more answers are correct. All correct answers must be selected by the user to succeed.

Optional-Multiple choice questions
This is a variation of multiple choice questions(see above), but the user must no select all correct answers, a minimum (as defined in the config) is enough to succeed. E.g. there are 5 choices and 3 of them are correct, and it is defined that 2 are enough. If the user then selects only 2 of the 3 correct answers he will gain the points.

Regex questions
The user needs to enter free-text in a text input box. The text must match a defined perl regular expression. E.g. If the expression is: '/leipzig.*1989/' and the users answers to the question "when and where started the peaceful 'revolution' in east germany?" - "In Leipzig 1989" then he will succeed. See the sample config/demo to learn more about this.

Cloze questions
The user must fill the hole inside a free text. Every field must be correctly filled out. It is possible to use regular expressions for valid field expressions. Eg:
President said, 'we will the '.

More features:

No limits
No limitation of the number of questions per quiz or the number of choices per question.

Counters
Two kinds of counters (performed via javascript): time and points counter. Counters are decrementing a counter, the time counter starts with the maximum of the seconds and the points counter starts with the maximum of available points. If the counter reaches 0, the application proceeds to the next question and marks this one as 'wrong' (visually shown as 'timeout').
Please note that this timing feature only exists for cosmetic purposes, or exactly: force the user to keep in mind that the time is limited. The application uses internaly an extra counter. This is possible because the user could turn off Javascript in his browser and/or manipulate the Javascript return values. With the internal counter this is not possible.

Access control via cookies
You can choose to control how users can access the quiz. It is for example possible to configure that every user can access the quiz only once, or you could define that one particular user coming from one particular ip address can access it only once. Of course it is also possible to completely turn cookies of.

Statistics
Very detailed and sophisticated result statistics at the end of the quiz. The user can see exactly what he did wrong and can really learn something. The administrator can view the statistic for any user at any later time while the user itself can only see his own statistic and only right after he finished the quiz.

Best-of listing
Configurable best-of listing on the main page. You can define how many users are visible in the best-of list. If you click on any user you can see the result summary of his quiz. The result, which, btw, is also shown on the statistics page, shows the success rate in percent, the time he took and the achieved score.

Uses HTML templates
All HTML output is printed to the browser using templates. You can customize the application to match your website design without changing the application itself. This way you can fully integrate q u i z z into your website.

Data storage uses GDBM
Results and statistics are stored in GDBM database files. GDBM comes with your perl installation, so no external database is required to run the application, the data will be stored right on the webserver.
You can use the free tool DBTOOL (compiled with gdbm support) for maintenance of the data files. DBTOOL is available for most unix flavors or as source code.

Open source
q u i z z is free software, free as of "free speech". It is licensed under the artistic license as perl itself.