• ベストアンサー

Smarty

Smartyを勉強しているものです。日付のプルダウン{html_select_date}で、選択した値をセッションに保持させて、再表示させたいのですが、{html_select_date}の中に、selectedに代わるものがありますか? 再表示後に変更できるように、プルダウン形式で表示を考えています。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

見たところ、属性にtimeというパラメータを渡してあげればいいようです。 【script】 $time = "2001-05-12"; $s->assign("time", $time); 【template】 {html_select_date time=$time} html_select_date関数上、下記が指定された文字がtimeとして認識可能とする スクリプトのようですが別の関数も呼んでたりするので細かくは追っていません。 if (preg_match('!^-\d+$!', $time)) { // negative timestamp, use date() $time = date('Y-m-d', $time); } // If $time is not in format yyyy-mm-dd if (preg_match('/^(\d{0,4}-\d{0,2}-\d{0,2})/', $time, $found)) { $time = $found[1]; } else { // use smarty_make_timestamp to get an unix timestamp and // strftime to make yyyy-mm-dd $time = strftime('%Y-%m-%d', smarty_make_timestamp($time)); }

kiyoko_55
質問者

お礼

早速試してみたところ、期待どおりの結果が得られました。 説明がとてもわかりやすく、大変助かりました。 ありがとうございました。

関連するQ&A