Smarty: html_options
●プルダウンメニューの作成
html_optionsを使うと、
簡単にプルダウンメニューが作れます。
{html_options name=名前 options=データ配列 selected=選択されるキー}
・name
select の name になります。
・options
value をキーに、表示文字列を値に持つ連想配列を指定します。
・selected
表示時点で選択するキーを書きます。省略可能です。
sample.php では、
$o_Smarty->assign("arr", array(1=>'red', 2=>'green', 4=>'blue', 7=>'white'));
$o_Smarty->assign("selected_id", 4);
sample.tpl では、
{html_options name=select options=$arr selected=$selected_id}
とすると、HTML 展開後は、
<select name="select">
<option value="1">red</option>
<option value="2">green</option>
<option value="4" selected="selected">blue</option>
<option value="7">white</option>
</select>
となります。
見た目は、以下のようです。
ちなみに、
この状態のまま form で submit すると、
<form method="post">
{html_options name=select options=$arr selected=$selected_id}
<input type="submit">
</form>
$_POST['select'] に、'4' が格納されます。
# データが文字列になっている事に注意して下さい。