CAPMはプロジェクトマネージメントのアソシエイトの資格のための試験で私が今勉強中です。
毎日クイズをネットから買ったり、あるいはただのもので勉強してたのですが、
せっかくPHPを勉強し直してるのでMySQLを使ってクイズを作ってみることにしました
今回はデータベースをどういう構成にしたか、それから、画面の構成について説明します。
クイズはMySQLのデータベースから読んでスクリーンに表示します。
表示された選択から選びSubmitを押すと次の問題にいきます。
最後まで終えるとスコアが表示されます。
メインメニューのページ:
クイズのページ:
最後のスコアのページ:
question_idがフォーリンキーとなって2つのテーブルを紐づけします。Choicesのテーブルは一つの質問につき1Rowとなっていて、Is_correctというカラムで正解かどうかをを判断します(1が正解です)。
1.questionテーブル
question_id int primary key
question text
2.choicesテーブル
choice_id int primary key
question_id int foreign key
choice text
is_correct tinyint default = 0
テスト用に3つの質問をQuestionのテーブルに、それぞれ4つの選択肢をChoicesにデータ入力してテストしました。
1.index.php
2.question.php
3.process.php
4.final.php
1.index.php
これはメインメニューの画面で、シンプルに、
1. 全部でいくつ質問があるか、
2. 選択肢問題であることの表示
3. 予想時間が表示されていて、あとStartボタンがついてます。
Startボタンを押すと次の画面にいきます。
2.question.php
この画面で質問と選択肢が表示されます。
選択肢はRadio buttonで、一つだけ選択するようになっています。
Submitを押すと次の問題に行きます。
最後の問題を終えると4のFinal.phpに行きます。
3.process.php
このPhpでは選択したものが正しいかどうかを判断し、
正しければSession variable($_SESSION)にカウントがされていきます。
最後の問題が来たらFinal.phpにいくようになってます。
4.final.php
このPHPではいくつ正しい答えをしたかのスコアを表示して、Take againというボタンを押すとまた、question.phpに戻るようになっています。
次回は実際どんなロジックを使ったか説明します。