href="リンク先のページURL">リンクメッセージ</a>)を利用するのが一般的ですが、そのリンクにパラメーター(変数=値)を付けてリンク先に渡すことができます。ColdFusionでは、リンク先で渡されてきたパラメーターをURL変数として利用することができます。ページのURLとパラメータを区別するのに、クエスチョンマーク(?)を使用します。href="リンク先URL?変数名1=値1&変数名2=値2&変数名3=値3&...">リンクメッセージ</a>画面ショット▲左画面の社員一覧(list.cfm)から右画面の社員詳細(detail.cfm)へのHTMLリンクを例にして解説します。左画面では必要最低限の情報をまとめて一覧で表示しています。ユーザーは、その一覧から希望する項目に貼られているリンクをクリックすることによって、希望する情報の詳細を見ることができます。リンクを使って目的の情報を辿っていくやり方は、Webサイトのナビゲーションとして良く行われる方法です(オンラインショップや宿の予約、キーワード検索など、Webブラウザを使ったさまざまな操作の中で多くのサイトがこの方法を使ってページを作っていることに気づくかと思います)。従来の静的HTMLでは、項目の数だけ詳細をページを作らないといけず、非常に手間がかかる作業です。そこでColdFusionをはじめとするWebアプリケーションの多くでは、詳細ページへのリンクは共通にして、個々のリンクを区別するためのパラメータを付加して、リンク先のページでどの項目をユーザーが選んだかを判別して、該当する詳細を表示するわけです。上記の左画面の一覧部分を抜粋した例は下記となります。社員A〜Fのどの社員のリンクをクリックしても、いずれもdetail.cfmページへリンクすることが分かります。違いは付加されたパラメーター(empid)の値です。個々の社員に固有の値(例えば社員番号をベースにした値など)を割り当てることで、どの社員かをリンク先で判定します。href="detail.cfm?empid=106">社員F</a><br>パラメーターを動的に指定する場合の例は下記となります。nameの列を取得し、それをもとに一覧を作成しています。href="detail.cfm?empid=#qEmpList.empid#">#qEmpList.name#</a><br></cfoutput>リンク先で渡された値はURL変数として利用することができます。URL変数を呼び出す際は、渡されてきたパラメーターの名前を変数名として頭に「URL.」を付けます。上記の例では、渡されてきたパラメーターを使ってデータベースからデータを取得し、取得した詳細は画面に表示しています。...</table></cfoutput>補足事項URL変数もForm変数と同じく、あるページから別のページに変数の値を渡すのに便利ですが、注意も必要です。URLのアドレスには、パラメーター名も値も記載された状態で表示されています。URL変数はURLアドレスの機能を用いて値を渡しているため、ユーザーの目に付きやすいだけでなく、ユーザーによって値を変えられやすいという点にも注意が必要です。▲上記は、社員番号102、社員Bさんの詳細を画面に表示しています。変えれば、他の社員情報も見れることが容易に想像できてしまいます。変えられてしまうと、別の社員の社員情報も消されかねない事態を引き起こします。他にも、クレジットカード番号や会員番号などをそのままURLパラメーターとして渡していると他の人にクレジットカード番号が知られたりURLの値を変えて他の人の情報を覗かれたりする可能性があります。それらセキュリティ問題を起こしかねない値をURLパラメーターには使用しないで下さい。必要に応じて値が適正かをチェックしたり、値を暗号化するなどを心がけて下さい。資料・FAQ事例紹介ColdFusionユーザーグループ。