- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:クイズ形式サイトの復習機能の構造)
クイズ形式サイトの復習機能の構造
このQ&Aのポイント
- PHP+MYSQLを使ってクイズ形式で学習問題を提供するサイトの復習機能の構造について。
- ユーザが間違った問題を復習リストに記録し、DBから順に取得して問題に正解するとリストから削除される。
- 復習方法はユーザ情報のミス問題を格納するフィールドを作成する方法と、問題テーブルにミスユーザのIDを記録する方法がある。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
1つのフィールドに複数のデータが入るのは好ましくないですね。 データベースの正規化がうまくできていないということになります。 私なら復習リスト用のテーブルを別に作ります。
その他の回答 (1)
- php504
- ベストアンサー率42% (926/2160)
回答No.2
>復習リストテーブル >[Primary][間違えた人のuserid][ミス問題の教科][ミス問題のid] > >のようなものを作成し >発生ごとにレコード挿入ということでしょうか? そうですね これならユーザが間違えた問題も検索できますし問題を間違えたユーザも検索できます。
質問者
お礼
なるほど。 よく理解できました。 ありがとうございました^^ 大変参考になりました。
補足
つまり、フィールドにカンマ区切りの 複数データをいれるのがまずいってことですよね? 第一正規化するとなると 復習リストテーブル [Primary][間違えた人のuserid][ミス問題の教科][ミス問題のid] のようなものを作成し 発生ごとにレコード挿入ということでしょうか? これだと確かに複数データは入ることはないですね。 これが一般的でしょうか?