22.1.3 Analysis: Poll v2This is NOT the latest copy of this book; click here for the latest version.
Our first attempt to create a web poll certainly works fine, but what if someone's favourite film is Pride & Prejudice, or The Matrix? In a multiple choice poll, there are always going to be people who want to complain about a lack of options (unless it is a straight yes/no question), but there are many situations when just having three possible answers is not enough.
To cope with this scenario we need to adjust the manner in which we've been thinking about our poll answer possibilities - the previous design had each answer physically attached to each question, which meant we always had a limited number of questions. Sure, we could adjust the design so that we had Answer4, Answer 5...Answer63, Answer64, etc, but that is both wasteful and sloppy programming.
A far neater and more flexible solution is to use normalisation to split off the answers from the questions, creating a table for poll answers. Using this method we would attach answers to their questions through the ID primary key in the pollquestions table, which theoretically gives us a flexible number of answers to each question.
|
Want to see this stuff in print? PHP in a Nutshell takes the core topics covered here, adds in thousands of edits from the editorial team and myself, and combines them to make an unbeatable reference for PHP programmers at all levels.
My latest book has hundreds more tips on how to use PHP, Apache, and MySQL, plus Perl, Python, shell scripts, performance tuning, and more!
|