ようこそ!逆襲のニートブログへ

ブログ内検索

最近の記事

はてなブックマーク数

この日記のはてなブックマーク数

カテゴリー

月別アーカイブ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

第3回:チャットアプリケーションを作成する

OpenPNE解析の参考にするために、今さらながらmojaviを学んでいる。

今日は、mojavi講座の第3回~チャットアプリケーションの作成だ。
http://www.stackasterisk.jp/tech/php/mojavi03_01.jsp はきりってレッツゴー!!!



2.Mojaviアプリケーションの構成

トレーニングのために前回作成したHelloWorldをSampleモジュールのHelloアクションとして作り直してみましょう。




Hello World!表示の移植はうまくいった。
index.php?module=モジュール名&action=アクション名で処理を指定する。
(1) /webapp/modules/ フォルダにモジュール名のフォルダを追加
(2) モジュール名のフォルダ内のactionsフォルダに、アクション名Action.class.phpを追加
(3) クラス名は、class アクション名Action extends Action と指定
…以下略…



http://www.stackasterisk.jp/tech/php/mojavi03_02.jsp
3.ユーザー入力の受け付け

次にユーザーからの入力の受け付け方を解説します。HelloWorldアプリケーションを改良して、 Hello [ユーザー入力]!とできるようにしてみましょう。





ユーザーからの入力はRequestクラス(この場合の実態は$request)が持つ連想配列(パラメータ)に格納されの二つのメソッドで取り出すことができます。





AttributeはParameterと似たようなRequestクラス内部の連想配列で、ActionからViewにデータを渡す時など内部的なデータ保持に使用




Hello Mike!もうまくいった。


4.GETとPOSTによる動作分岐

class DefaultIndexAction extends Action
{
function getDefaultView (&$controller, &$request, &$user)
{
return VIEW_INPUT;
}

function Execute (&$controller, &$request, &$user)
{
return VIEW_SUCCESS;
}

function getRequestMethods ()
{
return REQ_POST;
}
}
?>



getRequestMethods()メソッドの返り値で、挙動を制御するのか。
なるほど。

動作を一覧表にした場合、次のようになります。




























  GET POST
REQ_POST getDefaultView Execute
REQ_GET Execute getDefaultView
REQ_GET|REQ_POST Execute Execute
REQ_NONE getDefaultView getDefaultView


このGET/POSTでの分岐はMojaviの特色ともいえ、今回のアプリケーションのように
入力ページ表示→入力→入力データ処理
という良くある動作フローを扱う場合にもすっきりと実現できるため、是非とも使いこなしたい機能です。

↑↑↑なんかTABLEタグの表示が変だ。テーブルの上に空の行らしきものが表示されているように見える。ブログのバグかな???
まぁ、いいや。
関連記事

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURL:
http://gooddays1.blog37.fc2.com/tb.php/115-d0d59c4d

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。