我正在尝试创建一个默认为数据库中已有值的日期输入。
但是,当我将月,年和日设置为数据库值时,将在select元素上设置month,date和year属性,但页面仍会将当前日期显示为默认值。提交表单后,今天的日期将存储在数据库中。
下面是代码:
$mail_date_time = \explode(" ",$campaign["MailedDate"]);
$mail_date = explode("-",$mail_date_time[0]);
echo $this->Form->create("Campaign");
echo $this->Form->input("MailedDate",array(
'month' =>strtotime($mail_date[1]),
'year' => strtotime($mail_date[0]),
'day' => strtotime($mail_date[2])
));
echo $this->Form->end("Submit");
$ mailed_date原来是:[0] = 2009 [1] = 11 [2] = 11
有谁知道如何解决这个问题? 谢谢!
答案 0 :(得分:0)
Cake表单助手包括日期格式...即'dateFormat'=> MailedDate输入中的“DMY”。
输入字段显示的值将默认为$ this->数据中包含的值,并且可以使用'default'=>完全覆盖。 'value',或使用'empty'=>预填充'值'。
答案 1 :(得分:0)
为了预编译日期时间字段,必须使用'默认'关键字:
$mydate = '2015-09-10 06:40:00'
echo $this->Form->input('datetime', array(
'label' => 'Date 2',
'default' => $mydate
));