全体の提出内容の表示


全体提出状況の表示: submission.php

受講全員の課題提出状況を一覧できると教師としては非常に便利です。既にtask.phpでは受講生毎の提出物の一覧を表示させていましたが,ここではその制限を外し,下記のように表示するページを作成します。

PHPスクリプト: submission.php


解説

提出者の識別表示

リレーショナルベースデータベースの機能として,異なるテーブルに共通するカラムがある場合,それを元に互いの情報を組み合わせた新たなテーブルを作成することができるようになります。例えばこの講義支援システムのデータ構造の場合,taskテーブルのmemberフィールドは,memberテーブルのidを格納しているので,共通のものになっています。この場合,その例として,今回表示している提出者の表示が挙げられます。

SQL文だけで上記のような複数テーブルを組み合わせたテーブルを作成することが可能ですが,以下ではこの手法は使っていません。チャレンジしてみたい人はJOINをキーワードにいろいろ検索してこの手法を編み出してみて下さい。

ここでは次のような手順で二つのテーブルの情報を組み合わせた表示を行っています。

  1. 18~19行目でtaskテーブルに登録されているmemberカラムの情報を引っ張り出す
  2. 27行目から始まるwhile文による全件表示内で,29~31行目にmemberテーブルの情報を引き出すSELECT文を発行
  3. memberテーブルのname情報を38行目で表示

これを図解したのが下記になります。


Copyright (c) 2014-2017 幸谷研究室 @ 静岡理工科大学 All rights reserved.
Copyright (c) 2014-2017 T.Kouya Laboratory @ Shizuoka Institute of Science and Technology. All rights reserved.