受講全員の課題提出状況を一覧できると教師としては非常に便利です。既にtask.php
では受講生毎の提出物の一覧を表示させていましたが,ここではその制限を外し,下記のように表示するページを作成します。
PHPスクリプト: submission.php
リレーショナルベースデータベースの機能として,異なるテーブルに共通するカラムがある場合,それを元に互いの情報を組み合わせた新たなテーブルを作成することができるようになります。例えばこの講義支援システムのデータ構造の場合,task
テーブルのmember
フィールドは,member
テーブルのid
を格納しているので,共通のものになっています。この場合,その例として,今回表示している提出者の表示が挙げられます。
JOIN
をキーワードにいろいろ検索してこの手法を編み出してみて下さい。ここでは次のような手順で二つのテーブルの情報を組み合わせた表示を行っています。
task
テーブルに登録されているmember
カラムの情報を引っ張り出すwhile文
による全件表示内で,29~31行目にmember
テーブルの情報を引き出すSELECT文
を発行member
テーブルのname
情報を38行目で表示これを図解したのが下記になります。