PhpVote

What is PhpVote?
It's a small application written in PHP, using DBM functions, to allow easy creation and maintenance of polls, or votes.

Why using DBM instead of a "real" database, like MySQL or PostgreSQL?
Because using a "real" database would need some installation and/or configuration. With PhpVote, you only need PHP ; that means that you can move your entire polls from a server to another just by copying the PhpVote directory. Also, setup is quicker.

What are the different kinds of polls?
You have three kinds of polls : "unique", "multi", and "rank". In "unique" mode, you can choose only one answer. In "multi" mode, you can choose as many answers as you want. In "rank" mode, you assign preferences to proposed choices, from 1 to N, giving 1 to the choice you like the most. Warning: in "rank" mode, nothing enforces you to enter numbers instead of letters, and nothing checks that your numbers start at 1 and are consecutive. But if you make an invalid entry, your vote will be recorded, but it will be counted as invalid. Some kind of checking should be added when submitting the form.

How do I create my poll?
Choose "create" from PhpVote main menu. Enter a name for your vote. Remember precisely the name you choosed : there is no easy way to find it again later ! Enter a password (not used yet - later, maybe). Choose a type of poll (see above for explanations). In the text area "choices", enter all the choices that will be given to the voters, one per line. Blank lines will automatically be ignored.

How do I vote?
Just choose "vote" in the menu. You will be asked the vote name. Tip : you can create a "shortcut" with an URL looking like http://orga.enix.org/PhpVote/vote.php?dbname=myvote , where myvote is the name you choosed above.

What does the result page mean?
In "unique" and "multi" modes, it's quite easy. In "rank" mode, each choice has many values, for instance : "foobar:3,5,0,0" ; that
means that 3 persons did put "foobar" as their first choice, 5 persons did put it as their second choice, and so on.

It complains about "driver initialization failed...".
That means that the database engine could not create its files. Try giving write permissions to www-data (or the user your web server runs as) to PhpVote directory.