I took a look at your script as a result of your
request for Testers, so here are some things to consider:
From your README:
+Cookies! This will stop people from the same computer
or IP address from taking the quiz/test over and over.
Well all know it will not be the most secure way but it
will be okay.
Actually, it will only slow them down - if I delete my
cookie I can easily do the test again...
The only effective alternative would be logging the IP
address of everybody who has ever taken a quiz and
storing that in either a file or in a database - and
yes, I know this is space-intensive. Also, the
side-effect is that if I were to take the test, and
another member of my household also wanted to take it,
that would be impossible
+No god damm SQL! (Yet!)
I used to have a website that used files to store all
data. It was fast at first, until my forum started
getting larger, with 20 users and 300 messages or so.
It took over 2 minutes to load at times.
Now, I have a website with 50 regular users, thousands
of forum messages, and the average loading time is only
a fraction of a second.
If you use SQL, a lot of tasks that a PHP script would
normally do (such as searching, sorting and data
combining) will be done by the database system, rather
than your script. The database system was made for
performance and speed, I suggest taking advantage of it.
Also, your readme contains quite some typos
---------------------------
Actual program errors:
Slashes: When a question contains an apostrophe: ' - it
leaves the slashes behind when showing the test results
The Admin interface has NO protection at all... if I
type in the url
http://www.yourserver.com/pathtophpquest/admin/admin.php?Page=home
I am in...
You definitely need to change that...
Logged In: YES
user_id=985889
Corrected some typos in Readme file,check out the patch's
section of the project.
Logged In: YES
user_id=843433
Yes you are right in all cases. As you can note from my coding, among
other things I am an armature. The cookie thing... I agree it just adds
another step but its just a quiz/test and retaking it is _not_ that big of a
deal, heh. Then again it would not be that hard to store the ips.
Your right SQL is far more efficient in recording/storing/finding data but
I'm not dealing with massive amounts of data here and I want my
quizzes to be very open to move from one place to another. Eventually I
guess I would want to migrate to SQL, but perhaps still give the user the
option of using plain text in files.