Forms Cakephp向数据库输入日期
我试图从用户处获取日期,但无法通过日期验证。我不确定我做错了什么Forms Cakephp向数据库输入日期,forms,date,cakephp,input,Forms,Date,Cakephp,Input,我试图从用户处获取日期,但无法通过日期验证。我不确定我做错了什么 //model code public $validate = array( 'expiry' => array( 'rule' => array('date', 'ymd'), 'message' => 'Invalid date format' ) ); // controller public function add() { if ($this-&
//model code
public $validate = array(
'expiry' => array(
'rule' => array('date', 'ymd'),
'message' => 'Invalid date format'
)
);
// controller
public function add() {
if ($this->request->is('post')) {
$this->Entry->create();
if ($this->Entry->save($this->request->data)) {
$this->Session->setFlash(__('Your contest entry has been saved.'));
return $this->redirect(array('action' => 'index'));
}
$this->Session->setFlash(__('Unable to add your entry.'));
}
}
// view code
echo $this->Form->input('expiry', array('type' => 'date', 'dateFormat' => 'YMD'));
有人能告诉我我遗漏了什么吗?我让它工作起来了。我的解决方案主要是在我的模型中添加以下内容:
function beforeSave($options = array())
{
// covert the expiry date string to a valid format for the database
$this->data['Entry']['expiry'] =
date('Y-m-d H:i:s',
strtotime(
$this->data['Entry']['expiry']));
}
视图代码中的dateFormat是否应为所有大写格式?例如ymd date为today='20140814'您是否调试了提交的实际数据,以验证其是否为您所期望的格式?我不确定应该采用何种格式。如何知道要插入到数据库中的格式,以及哪个变量保存要插入到数据库中的内容?谢谢你的耐心。我是个新手CakePhp@Katelyn-您希望它采用什么格式并不重要-调试以找出提交的内容,然后确定您认为它是否应通过验证规则,如果您认为提交的数据应通过验证规则,请将其粘贴到您的问题中,以便我们进行处理。这就像其他事情是错误的,没有任何东西是提交给该领域。。。在我们知道这一点之前,没有什么可以帮助的。