SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Delphi for PHP はじめの3歩(AD)

Delphi for PHP はじめの3歩 その2

Delphi for PHPでビジュアルPHPプログラミング

  • このエントリーをはてなブックマークに追加

別のページに移動するフォーム 2

別のフォームを作成する

 次に、登録結果を表示するフォームを作成します。ここでは、データを実際に登録することはしませんが、受け取ったデータを画面に表示します。

 メインメニューから、「File」-「New」-「Form」を選択してフォームを作成します。作成したフォームには、次のようにコンポーネントを配置します。

図12 コンポーネントの配置
図12 コンポーネントの配置

 プロパティを以下のように設定します。

Unit3
プロパティ
Caption 登録結果
Encoding Unicode(UTF-8)
Name ResultForm
Label1
プロパティ
Caption 登録結果
Font.Size 16
Font.Weight bold
Label2
プロパティ
Name lblName
Label3
プロパティ
Name lblEmail

 出来上がったフォームのデザインは以下のとおりです。

図13 結果フォーム
図13 結果フォーム

 「File」-「Save As」メニューを実行し、このフォームを「resultform.php」という名前で保存します。

フォーム間でのデータのやりとり

 通常は、入力フォームのOnClickイベントですぐにデータを登録してしまうかもしれません。しかし、そのデータを次のフォームに引継ぎ、確認を求めたり次のステップの入力を促したりするかもしれません。

 ここでは、入力フォームregform.phpに戻って入力したデータを共有できるようにし、結果フォームを呼び出すコードを記述します。

 設計画面でbtnSubmitを選択し、Object InspectorのOnClickイベントの値列をダブルクリックします。表示されたコードに以下を記述します(太字箇所)。

OnClickイベント
function btnSubmitClick($sender, $params)
{ 
    $_SESSION['name'] = $this->edtName->Text;
    $_SESSION['email'] = $this->edtEmail->Text;
    redirect("resultform.php");
}

 入力した情報はセッションに格納することで、別のフォームで共有することができます。最初の2行がセッションにデータを格納するコードです。redirectメソッドを使って、結果を表示するフォームを呼び出しています。

 結果を表示するフォームの側では、セッションから情報を取り出し、ラベルに表示します。結果フォームresultform.phpを表示して、設計画面でフォーム全体ResultFormを選択します。Object InspectorでOnShowイベントを選択し、値列をダブルクリックします。

 表示されたコードに、以下のように記述します(太字箇所)。

OnShowイベント
function ResultFormShow($sender, $params)
{
     $this->lblName->Caption
          = '名前は ' . $_SESSION['name'] . ' です';
     $this->lblEmail->Caption 
          = 'メールアドレスは ' . $_SESSION['email'] . ' です';
}

 以上でラベルに入力された情報を表示できます。プログラムを実行してみましょう。

図14 実行結果
図14 実行結果

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Delphi for PHP はじめの3歩連載記事一覧

もっと読む

この記事の著者

EDN編集部(イーディーエヌ編集部)

エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。EDN編集部は、EDN記事と連携...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2254 2008/08/20 13:35

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング