フォームデコード フォームデコードとテンプレートファイル
フォームデコードとテンプレートファイルの関係
フォームデコードで入力された内容に従い、テンプレート内の特別な文字列が適宜「置き換わる」というのがテンプレートの機能です。
例
フォームデコードのテキストボックスに「朝日太郎」と入力して送信。
フォームデコードの表示 | |
---|---|
フォームデコードのタグ | お名前<input type="text" NAME="NAME"> |
テンプレートファイルの$VAL{変数名}が、変数名と同じNAME属性のフォームの入力内容を読み取り、置き換わります。
テンプレートの文字列 | お名前:$VAL{NAME} |
---|
処理結果
表示 | お名前:朝日太郎 |
---|
テンプレートで利用する特別な文字列
テンプレートの作成に利用する、特別な文字列の説明です。
文字列一覧
- $VAL{変数名}
- $_IF{VAL,変数名,比較値,結果値1,結果値2}
- $_SELECT{VAL,変数名,比較値1,結果値1,比較値2,結果値2,...}
- $_DUMPVAR{VAL}
- $$
$VAL{変数名}
$VAL{変数名}という文字列が、変数名と同じNAME属性のフォームの入力内容に置き換わります。
主にテキストボックスやテキストエリアのテンプレートに使用します。
例:テキストエリア
フォームデコードのテキストエリアに「安い」と入力して送信。
フォームデコードの表示 | |
---|---|
フォームデコードのタグ |
感想<br> <textarea NAME="comment" ROWS="4" COLS="30"></textarea> |
テンプレートファイルの$VAL{変数名}が、変数名と同じNAME属性のフォームの入力内容を読み取り、置き換わります。
テンプレートの文字列 | 感想:$VAL{comment} |
---|
処理結果
表示 | 感想:安い。 |
---|
$_IF{VAL,変数名,比較値,結果値1,結果値2}
二択もしくは複数選択が可能な選択肢の場合、$_IF{...}を使用します。
$_IF{...}の文字列が、同じNAME属性のフォームデコードの選択内容が「比較値1」と一致すれば「結果値1」に、一致しなければ「結果値2」に置き換わります。
主にラジオボタンやチェックボックスのテンプレートに使用します。
例:ラジオボタン
ラジオボタンから「男性」を選択して、送信。
フォームデコードの表示 | |
---|---|
フォームデコードのタグ | 性別 <input type="radio" NAME="sex" VALUE=" man">男性 <input type="radio" NAME="sex">女性 |
テンプレートファイルの$_IF{...}が、変数名と同じNAME属性のフォームの入力内容を読み取り、置き換わります。
テンプレートの文字列 | 性別:$_IF{VAL,sex,man,男性,女性} |
---|
処理結果
表示 | 性別:男性 |
---|
例:チェックボックス
チェックボックスから「アメリカ」と「フランス」を選択して、送信。
フォームデコードの表示 | |
---|---|
フォームデコードのタグ |
行きたい国は? (複数選択可能)<br> <input type="checkbox" NAME="usa" VALUE="country">アメリカ<br> <input type="checkbox" NAME="china" VALUE="country">中国<br> <input type="checkbox" NAME="france" VALUE="country">フランス<br> <input type="checkbox" NAME="germany" VALUE="country">ドイツ |
テンプレートファイルの$_IF{...}が、変数名と同じNAME属性のフォームの入力内容を読み取り、置き換わります。
ここでは、結果値2を空欄にしています。また、処理後に見やすくなるよう、結果値1の国名の後ろに・ (中黒)を付加しています。
テンプレートの文字列 | 行きたい国は?: $_IF{VAL,usa,country,アメリカ・,} $_IF{VAL,china,country,中国・,} $_IF{VAL,france,country,フランス・,} $_IF{VAL,germany,country,ドイツ・,} |
---|
処理結果
表示 | 行きたい国は?:アメリカ・フランス・ |
---|
$_SELECT{VAL,変数名,比較値1,結果値1,比較値2,結果値2,...}
複数の選択肢から結果を1つだけ求める場合、$_SELECT{...}を使用します。
$_SELECT{...}の文字列が、同じNAME属性のフォームデコードの選択内容が「比較値1」と一致すれば「結果値1」に「比較値2」と一致すれば「結果値2」に置き換わります。
主にラジオボタンやプルダウンメニューのテンプレートに使用します。
例:プルダウンメニュー
プルダウンメニューから「赤」を選択して、送信。
フォームデコードの表示 | |
---|---|
フォームデコードのタグ |
好きな色は? <SELECT NAME="color"> <option selected>選んでください。</option> <option VALUE="red">赤</option> <option VALUE="blue">青</option> <option VALUE="yellow">黄色</option> </select> |
テンプレートファイルの$_SELECT{...}が、変数名と同じNAME属性のフォームの入力内容を読み取り、置き換わります。
テンプレートの文字列 | 好きな色は?:$_SELECT{VAL,color,red,赤1,blue,青,yellow,黄} |
---|
処理結果
表示 | 好きな色は?:赤 |
---|
$_DUMPVAR{VAL}
確認ページのテンプレートに必須の文字列です。テンプレートの<form>~</form>内にそのままコピー&ペーストしてください。<form>~</form>内であれば、記述場所はどこでも構いません。
$$
特別な文字列以外で、テンプレートファイルに $ (ドル記号)を記述する場合、$$ のように2つ並べてください。
例
テンプレートファイルの記述例
テンプレートファイルの記述 | この食べ物は10$$です。 |
---|
テンプレートファイルの $$ が $ に置き換わります。
表示 | この食べ物は10$です。 |
---|