6-challenge, multiplayer & multilanguage Quiz
Hello everyone. I have a few questions for you who have experience with Quiz applications.
Here's what it is. I'm trying to make a multiplayer quiz (for 3 players) who will have 6 groups of questions with different forms ("true-false", "4 answers", "3 replies" & "connect the concepts of" etc). Questions are organized so that there is main group (geography, history, literature, movies, music, celebrities, sports, etc..) Each group has a subgroup (More precise division), and then it has often the second sub-level.
Example: "Movies" are the main group. The subgroups are: "Oskar", "Blocbuster", "European film", "Golden Lion (Venice)", "martial art movies" etc.
Subgroup "Oscar" has its subgroups such as: "Best Picture", "Best Actor", "Best actress" and so on. I hope you understand me.
The point is: The central group has no questions, it is just determinant in the database, the questions are in the subgroup of level 1 or even deeper. Note: All main themes have subgroups of level 1, but not all have subgroup of level 2 or 3
However, this is not the end. Each question has been translated into five languages for players who come from other countries can read and answer in their own language.
Furthermore, each question has a specific name: [I] – for international questions [L] - local questions (this type of question may appear only if all players are from one country). Players will use the application made in Flash.
The questions are :
1. What is the best way to organize a database of questions? As a large or for each language separate database? Give me a suggestion how to organize tables, because I have about 2500 questions, which will be used for 9 different games (but all belong to the group "True / False" or "multiple answers").
2. How do I use the ID issue, because the questions are sorted into groups? Note: It is needed a simple way of marking so database can be updated when it is needed, including import from CSV file. Autoincrement number of [ID] is not an appropriate way.
3. How can I use the RANDOM funkc. to extract from each group only 1 QUESTION? (Example: The first quiz-game has 10 true/false questions. I have 14 main groups. It is needed to choose only one question from first group, subgroups is irrelevant, the main group MUST NOT be repeated)
4. Having in mind that the client is -side Flash applications, it is logical that the communication is done with XML files. So it is a Flash <-> XML <- PHP <- MySQL connection.
Question: This is one way. Is there a better way? Some other variant?
5. There now has the problem. Example: There are many users who are online and use the quiz application. For example, 10,000. of the total, 6000 is pressed Button for "Play game" and appeared in a kind of "lobby" where all participants are sorted into groups of 3 players for a quiz game. That makes about 2000 separate sessions.
Question: What is the best way to generate different XML files, where it can be set up, and how to give it a name?
I have more questions, for start this is most important. Thanks in advance. :)