TOP比較データ> LoginErrorView.class.phpの追加
徹底比較!! PHP & Java 〜 フレームワーク編
徹底比較!! PHP & Java 〜 フレームワーク編

第6回:Mojaviで機能を実装してみよう
著者:ワイズノット  土橋 芳孝   2006/1/31
前のページ  1  2  3   4  次のページ
LoginErrorView.class.phpの追加

   (6)のLoginErrorView.class.phpは、ログイン処理を行うアクションクラスであるLoginAction.class.phpの処理結果がERRORの場合にログイン画面の表示処理を行います。

   LoginAction.class.phpにおいて処理結果がERRORとなった際に、変数へ格納されたエラーメッセージを参照し、ログイン画面に表示します。
LoginErrorView.class.phps
<?php

class LoginErrorView extends PHPView {

   public function execute () {

      // エラーメッセージをログイン画面を表示する
      $request = $this->getContext()->getRequest();
      $errors = join("<BR>", $request->getErrors()) . "<BR>";
      $this->setAttribute('error', $errors);
      $this->setTemplate('Login.php');
   }
}

?>



LoginSuccessView.class.phpの修正

   (7)のLoginSuccessView.class.phpは、ログイン処理を行うアクションクラスであるLoginAction.class.phpの処理結果がSUCCESSの場合にトップ画面の表示処理を行います。

   本連載の第4回からの変更点としては、データベースから登録者情報の一覧を取得してトップ画面に表示するための加工を行った後、利用者情報の一覧をトップ画面に表示するための変数に値を格納している点です。

LoginSuccessView.class.php
<?php

class LoginSuccessView extends PHPView {

   public function execute () {

      // 画面よりログインIDを取得する
      $request = $this->getContext()->getRequest();
      $id = $request->getParameter('id');

      // DBより登録者の情報を取得する
      $db = mysql_connect("localhost", "root", "");
      mysql_select_db("test");
      $result = mysql_query(
         "select id, name from users order by id");

      // 登録者を一覧表示するためのデータを生成する
      $list = '';
      while ($record = mysql_fetch_array($result)) {
         $list = $list . "<TR>";
         $list = $list . "<TD>";
         $list = $list . $record['id'];
         $list = $list . "</TD>";
         $list = $list . "<TD>";
         $list = $list . $record['name'];
         $list = $list . "</TD>";
         $list = $list . "</TR>";
      }
      mysql_close($db);

      // ログインIDと登録者一覧をトップ画面に表示する

      $this->setAttribute('id', $id);
      $this->setAttribute('list', $list);
      $this->setTemplate('Top.php');
   }
}

?>


LogoutSuccessView.class.phpの修正

   (8)のLogoutSuccessView.class.phpは、ログアウト処理のためのアクションクラスであるLogoutAction.class.phpの処理結果がSUCCESSの場合にログイン画面の表示処理を行います。

   本連載の第4回からの変更点としては、エラーメッセージを格納する変数を初期化した後にログイン画面の表示処理を行っている点です。

LogoutSuccessView.class.php
<?php

class LogoutSuccessView extends PHPView {

   public function execute () {

      // エラーメッセージを初期化してログイン画面を表示する
      $errors = '';
      $this->setAttribute('error', $errors);

      $this->setTemplate('Login.php');
   }
}

?>

前のページ  1  2  3   4  次のページ


ワイズノット
著者プロフィール
株式会社ワイズノット  土橋 芳孝
以前はJavaを利用したWebアプリケーション開発とオブジェクト指向設計を得意としていたが、ワイズノットに入社以来、PHPの魅力にとりつかれる。現在はワイズノットのプロジェクトマネージャーとして、PHPをはじめとしたオープンソースの普及に力を注いでいる。


INDEX
第6回:Mojaviで機能を実装してみよう
  Mojaviを利用したサンプル・アプリケーションに機能を追加する
  Top.phpの修正
LoginErrorView.class.phpの追加
  Mojaviを利用したサンプル・アプリケーションの動き