• []
  • []
  •  
  • del.icio.us 
  •  
  • Yahoo!֥åޡϿ 

PRADO GET, POSTリクエスト取得

PHP 求人 募集 Symfony CakePHP Smarty Ruby on Rails

PRADO GET, POSTリクエスト取得 概要

システムを作る上で一番基本になるGET, POSTリクエスト。
これらを取得する方法をキチンと押さえておくのが製作の第一歩になる。

GETのリクエストデータはTHTTPRequestコンポーネントを介して取得する。
POSTの場合はプレゼンテーション側に記述したコンポーネントを介して取得することになる。

PRADO GET, POSTリクエスト取得 サンプル

/pages/req.page

<html>
<body>
<form method="get" action="?page=req">
  <com:TTextBox ID="test1" />
  <input type="text" name="test1" value="hoge" />
  <com:TButton />
</form>
</body>
</html>

/pages/req.php

<?php
class req extends TPage{
public function onLoad( $param )
{
  parent::onLoad( $param );
 
  echo 'class:'.get_class( $this->Request );
  echo '<br />keys:';
  print_r( $this->Request->keys );  // request keys
  echo '<br />itemAt:';
  print_r( $this->Request->itemAt( 'test1' ) ); // name=test1
  echo '<br />';
  echo 'class:'.get_class( $this->test1 );
  echo '<br />test1:';
  print_r( $this->test1->Text ); // ID=test1
}
}

これをサブミットするとTTextBoxコンポーネントのID=test1の情報は取れない。
代わりにname=test1の情報が取れるのがわかる。
これはGET、POST両方共通。
しかしregister.globalsをoffにするのと同様にこの方法はGETに絞る方が賢明だろう。

POSTのデータはプレゼンテーションreq.pageに記述したTTextBoxのID=test1を以下のように取得する。

$this->test1->Text

framework/prado/request.txt · 最終更新: 2007/07/22 20:51 by dozo