1.ColdFusionのページ処理
ColdFusionはWebサーバーと連携して動作します。Webサーバーは、.cfmや.cfcといったColdFusionによって処理されるページのリクエストがあった場合、その処理をColdFusionに渡します。ColdFusionは、ページ内に記載された命令を解析し、その内容に沿った処理を行い、処理の結果をWebサーバーに戻します。
2.ColdFusionページの作成
ColdFusion用のページを作成するための特別な仕組みや機材は必要ありません。HTMLのページを作成するのと同じくプレーンテキストファイルでページを記載します。ColdFusionは、最初にページを処理するタイミングでColdFusion内部で自動的に変換、コンパイルされ、Javaのプログラムとして動作します。
3.ColdFusionページの作成例
ColdFusionページを作成する時は、後で紹介するCFタグやColdFusion用の関数を用いて動的な処理を追加していきます。下記の例は、ColdFusion ページを作成する簡単な例です。
4.ColdFusionマークアップ言語(CFML)について
5.タグ(CFタグ)について
タグ(CFタグ)とは、ColdFusionサーバーに処理を行うことを指示する時に使用するコマンドをイメージして下さい。HTMLと同様にページの上部からCFタグが解釈されて実行されていきます。
6.関数について
関数とは、CFタグと同様にColdFusionサーバー上で動作します。一般的な使い方では、一つ、または、複数の引数を関数の呼び出しとともに渡し、その関数の処理を実行した結果を画面に表示したり、変数の値やCFタグの属性の値として指定したりします。
プログラミングにおいて、値や文字を一時的に記憶する変数は欠かせないものです。ColdFusionでも、他のプログラム言語と同様に変数を使用 することができ、計算時の一時的な値の保持やCFタグの処理に必要な値を変数に入れて渡したり、パラメータとして関数を呼び出した結果を格納したりするこ とができます。ColdFusionには、変数を使用できる範囲や変数の保存時間に応じた10種類以上の変数が用意されています。用途に応じてそれら変数 を使い分け、効率の良いプログラミングを図ることを考えましょう。
「ColdFusion 変数の使用」
http://help.adobe.com/ja_JP/ColdFusion/10.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-7ff2.html
1.変数について
変数を使用してColdFusionページの処理中などに一時的または一定期間データを保管する事ができます。ColdFusionには10種類を超える変数が用意されており、それぞれ用途に応じて使い分けていくことで利便性が高まります。本コンテンツではその中から基本的な変数を紹介していきます。
2.<cfset>タグを使ってローカル変数を作成する
ColdFusionで最も多く使うであろう「ローカル変数」の作成方法について紹介します。
3.変数に別の変数を代入する
ある変数に別の変数の値を代入する場合、引用符を付けずに代入したい変数名を指定します。
4.変数を表示する
ColdFusionのメモリに格納された変数の値を出力するには<cfoutput>タグを使用します。ColdFusionは開始の<cfoutput>タグ〜終了タグ</cfoutput>の間に変数の表示や関数の指定が無いかをスキャンします。変数の値 を表示するには、変数名の前と後ろにシャープ(#)で囲みます。
5.変数と文字列とをつなげる
ColdFusionの変数と別の文字列とをつなげるには、区切りとなる&を使用します。
6.変数と別の変数をつなげる
ColdFusionの変数と別の変数をつなげる場合も、区切りとなる&を使用します。
7.変数を使って計算する
ColdFusionの変数の値に数値を入れておけば、計算式などで使用することができます。
1.大文字小文字や変数名の記述について
ColdFusionのタグや関数・変数名の記述についてや変数のタイプについて紹介します。
2.シャープ記号(#)について
ColdFusionでは関数や変数をシャープ記号(#)で囲むことで、単なる文字列なのか、それとも関数や変数なのかを区別します。
3.引用符( ' や " )について
ColdFusionで変数の値に文字列を指定する時は、文字列を一重 (')または二重 (")引用符で囲む必要があります。ColdFusionは引用符で囲まれている内容は文字列として解釈します。
4.算術記号を使って値を計算する
ColdFusionでは、算術記号を使うことで、値を計算することができます。
5.条件式で使用する演算式について
ColdFusionの条件処理を行う際には、演算式(等号や〜以上、〜未満、他)を用いることがあります。一般的なプログラム言語では、演算子に記号を用いることが多いですが、ColdFusionはタグ言語であるため、タグ<>や=は使うことができません。代わりに相当する言葉で演算子が用意されています。
6.条件式について@
ColdFusionでは、他のプログラム言語同様、if文とswitch文の条件式があります。条件の際に使用する演算子は、一つ前のページに記載した演算子を使って条件文を組み立てます。
7.条件式についてA
前のページで紹介した if文の条件文で、cfelseifが続いてしまうような条件の場合は代わりにswitch文で条件分岐を行うことができます。
8.コメントについて
コードにコメントを付けるのは、複数の開発者や後日のメンテナンス作業などに非常に有効な方法です。CFMLのコメントについて解説します。
9.テンプレートファイルを取り込みたい NEW
Webサイトでは視覚的なデザインの統一を図るため、 Webサイトで共通して表示をする部分、例えばヘッダーやフッター、サイドメニューなどをテンプレートファイルとして作成し、それを任意の場所に取り込みたい場合があります。ColdFusionによるプログラミングを行うことで、共通化を行う部分の部品をテンプレート化し、各ページでテンプレートファイルを取り込んで使用する事が可能です。
1.フォームの処理
Webアプリケーションの多くは、ページを表示するだけでなく、ユーザーからの情報をもとに様々なサービスを提供しています(オンラインショップや宿の予約、検索など)。ユーザーからの情報を受け取るためにフォームを使用します。
2.FORMページについて
FORMページでは、ユーザーから情報を入力するための各種項目とSUBMITボタンを配置して、ユーザーに情報を入力してもらったデータをACTIONページに渡します。
3.ColdFusionフォームについて
ColdFusionに用意されているフォーム機能を使用すると、HTMLフォームの機能を拡張し、それらのチェックを行うプログラムを自動で作成する便利な機能が用意されています。
4.送信先のACTIONページについて
HTMLはブラウザで動作する言語のため、サーバーに渡されたデータを処理することができません。送信されたデータをサーバーで処理するのにColdFusionを用います。ColdFusionは、フォームから送信されたデータをForm変数として使用することができます。
1.準備(データソース登録)
ColdFusionからデータベースへの接続するためには、“どこにデータベースサーバーが置かれているか(ホスト名やIPアドレス)”や、DBにログ インするための“ユーザー名・パスワードなど”の情報が必要となりますが、それら接続情報を設定・管理する物を「データソース」と呼びます。データソース の登録を、ColdFusion Administrator にログインし、[データとサービス]-[データソース]で行うことで、データベースへ接続が可能になります。
2.データベースからデータを取得する
データベースからデータを取得する方法として、SQLと呼ばれるデータベース言語を使用する方法があります。ColdFusionもSQLを用いたデータの取得が可能であり、SQLの記述を<cfquery>タグで囲みます。
3.データベースから取得したデータを画面に表示する
データベースから<cfquery>を使ってデータを取得すると、そのデータはクエリ変数(クエリオブジェクト)の形で変数に保存されます。その値を画面に表示する方法を紹介します。
4.データベースから取得したデータを表の形で表示する
データベースから<cfquery>を使ってデータを取得すると、そのデータはクエリ変数(クエリオブジェクト)の形で変数に保存されます。その値を画面に表示する方法としてHTMLの<table>形式で表示する方法を紹介します。
5.データベースから取得したレコード数を表示する
<cfquery>タグを使ってデータベースからデータを取得した際、作成されるクエリ変数にはいくつかの追加情報が含まれます。
6.データベースから取得したレコードを表示する際、現在何件目かを取得する
<cfquery>タグを使ってデータベースからデータを取得した際、作成されるクエリ変数にはいくつかの追加情報が含まれます。
7.フォームから送信された値を使ってデータを絞り込む
<cfquery>タグを使ってデータベースからデータを抽出する際に用いるSQLの一部、またはSQL全体をColdFusionを使って動的に指定することができます。これによってユーザーがフォームで入力したデータに限定したデータを取得したり、特定の条件の時にのみデータを絞り込んで取得するなど、動的なクエリ処理が可能です。
1.ページリンクのURLにパラメーターをつける
HTMLであるページから別のページに遷移する際にはページリンク(<a href="リンク先のページURL">リンクメッセージ</a>)を利用するのが一般的ですが、そのリンクにパラメーター(変数=値)を付けてリンク先に渡すことができます。ColdFusionでは、リンク先で渡されてきたパラメーターをURL変数として利用することができます。
2.URLにパラメーターを付ける際・受け取る際の注意事項
URLパラメーターは、ブラウザのURLアドレスに付加するため、指定できる変数名や値に制限があります。その制限を知り、適切な回避を行わないと、値が途中で切れたり文字化けを起こす場合があるため注意が必要です。
3.URL変数の値に特殊文字やスペース、日本語をセットする方法
URL変数は、これまで説明した通りURLアドレスにパラメーターを記載する方法で変数の受け渡しを行うため、特殊文字やスペース、日本語などをそのまま利用すると文字化け等を招く恐れがあります。変数の値にそれらを使用したい場合には、値をエンコードします。
4.プログラムで別のページに遷移させる
Webアプリケーションをプログラミングしていると、さまざまなタイミングで強制的に別のページに遷移させたい場面に遭遇します。ColdFusionには<cflocation>タグが用意されています。このタグを使用すると、タグを記述した箇所でColdFusionの処理が停止し、指定したURLに移動するために、ブラウザに応答コード30xを戻し、リダイレクト(遷移)させることができます。