Added a new branch for experimenting on homework4. Added registration.php,
which is a draft for the registration page (it features a Captcha!).
Added captcha-config-template.php, template for captcha-config.php, which
contains the private/public Captcha key. Now this file is required in
registration.php (I want to battle accidental uploads of sensitive
information).
Wrong filename specified in comment (should be registration.php).
Completed the registration page. User credentials will now be entered in the database (if they're
not spammers). Their passwords wil be hashed with help of the hashing algorithm of PHPass (which
is included in PasswordHash.php. I have also included recaptchalib.php, which is needed for
processing Captcha's.
Added login.php, a login script. After login, users have to be redirected to
a personal page (personalpage.php), which now only prints a single line (in
the final version, it needs to show a link to the multiple choice questions,
the score history of a user and a "hall of fame" (top 5 users)). Minor
modification to registration.php.
Timeout the session after a week/comment edit.
Made the code a bit easier to read, by adding comment "boundaries" to the code
(for example, something like //---- FUNCTION DEFINITIONS ----\\). Improved
session management.
Renamed index.php to quiz.php. personalpage.php is now more like a template
of what the final result should look like (for now, it's only possible to
logout/follow the link to quiz.php on this page).
Fixed a bug where users who create a new account would be able to
visit the personal page of another - already logged in - user.
Updated session management of the php scripts (now it's based on the idle time
of a user and not a fixed point in the future).
Major change to file organization. I put library files like PasswordHash.php
and rechaptchalib.php in a folder called "phplib", together with a file called
"session_dbconnect" (contains the function to start sessions/keep track of
session expiration and the function to connect to the database) and a folder
"config" which contains the configuration file templates (database config and
Captcha keys).
Incorporated quiz.php into the logged in user "area" (so now you have to be
logged in to view the quiz). Added "Abort quiz" and "Logout" buttons to
quiz.php. Modified my initial ER-design, I was not content with it.
Completely incorporated the quiz into the site. Now the personal page features
a hall of fame which displays the 5 fastest/best scoring users. Each users has
a personal top 5, too. Furthermore: I wasn't content with the DB design
(again), so I changed it (I thought way too complex about storing the time
someone takes to complete the quiz).
Merged the branch register into master.