dポイントプレゼントキャンペーン実施中!

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

A 回答 (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));
}
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/10/12 20:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!