mysqlとphpを使ってオンラインクイズでユーザーの進行状況を効率的に記録して表示する方法を知りました。ユーザーが特定の質問をスキップしたり、画面を閉じる場合は、質問リスト項目などの隣に「完了」が表示され、進捗状況が表示されます。mysqlとphpを使ってユーザーの学習進捗状況を追跡するシステムをコーディングする方法
問題または懸念は、実際に進行状況を保存する方法とそれを確認する方法です。ここで
は私のデータベース設計は、この質問のために簡略化されています表1:ユーザー フィールド:ID、ユーザ名、PW、ユーザ名、進捗
表2(はい、私はここに進歩と呼ばれるフィールドを持っています) :questions フィールド:ID、レッスン、質問、ヒント、回答
ユーザーが質問を完了した場合、進捗フィールドにquestion_idを追加します。質問リストとホームページに
それがそのようにページに渡された後、私はグラブにユーザIDの進捗フィールドを持っているでしょう...
select progress from user where id = $user_id
私はおそらく持つすべてのこれらの配列を取得したいです完成した質問のすべてのIDです
次に質問ごとにifステートメントを実行する必要があります。 "質問ID =進捗[ID]とエコー"完了した "という種類のステートメント。
これは効率的ですか?それ以外の方法は?この種のことを行うチュートリアルをオンラインでお試しいただければ幸いです。ありがとうございました
を得ることができ、一般的な原則です:あなたは、データベースを設計しているとあなたが連結されているすべての時間同じ種類のエンティティの複数のインスタンスを一緒にして、結果を1つの列に詰め込むことは、ほとんど間違いなく既に間違っています。 –