関連記事
【開発実況シリーズ】Web日報登録システムを作る #12 管理者:社員一覧機能開発編
この記事の動画版はこちら(画像クリックでYoutubeに飛びます)
今回は、開発実況シリーズ「Web日報登録システム」の第12回ということで
前回の続きを進めていきたいと思います。
前回は・・・
前回から、管理者機能の開発に着手しています。
前回は、こちらの管理者ログインを実装しました。
userテーブルに「auth_type」という権限カラムを追加して、そこに「1」が立っているユーザーのみが管理者としてログイン出来るようになりました。
前回の記事はこちら
今回は、ログイン後の画面である、こちらの社員一覧画面を作っていきましょう!
今回のタスク
今回も、最初に作業内容を簡単にまとめておきましょう。
まずは、userテーブルから全データを取得し、画面に一覧表示します。
UI設計時は「社員番号」と「社員名」のみ表示する形になっていましたが、前回「権限」カラムを追加したので、それも表示するようにしておきましょう。
そして、社員名にリンクを貼り、クリックすると次の画面である「社員別の月別リスト」へ遷移するようにします。
この画面の実装内容はこんなところですね。
【タスク】
・userテーブルから社員一覧を取得
・権限列の追加
・社員名にリンク設定
それでは、順番に実装していきましょう!
userテーブルから社員一覧を取得
今回の社員一覧画面のPHPファイルは、adminフォルダの「user_list.php」ですね。
まずはPHPブロックを追加して、お決まりのrequireとsession_startを追加します。
ログインチェック処理は、管理者用のチェック処理を入れます。
これで、ログインされていない状態でこの画面に直接アクセスすると、このようにログイン画面に強制遷移されます。
次に、データベースに接続してuserテーブルから全データを取得します。
HTMLブロックでは、取得したデータリストをループ表示させるようにして、各列に表示したいカラム名を設定します。
これでOKですね。
ログインして確認してみましょう。
データベースに登録されている2名のユーザーが表示されるようになりました。
権限列の追加
次は、権限カラムを追加表示してみましょう。
表のタイトルをタグで追加して、同じようにデータベースのカラムを表示させます。
ただ、auth_typeカラムはそのまま表示すると、このように「1」という数字が表示されてしまうので
1というデータが入っていたら「管理者」と表示させるように、分かりやすくしてみましょう。
これで良いですね。
こんな感じで、各ユーザーの権限も表示されるようになりました。
社員名にリンク設定
最後に、社員名のリンク部分を調整します。
現在は、単純に次画面である「user_result.php」を呼ぶようになっていますので、どのユーザーの月別リストを表示するのか?ということが分かるように、GETパラメーターを付け加えておきます。
このようにしておけば、user_result.phpではこのGETパラメーターを受け取って、そのIDのユーザーの月別リストを表示することが出来ますね。
これで、この画面の機能実装は完了です。
次回予告
今回は管理者側の「社員一覧画面」の実装が完了しました。
次回は、この社員名をクリックした後に表示される「社員別の月別リスト」の実装を行っていきましょう!