使用CakePHP将日期字段保存到数据库中有问题。
表列名
[User].[dob]
<<p> 视图/strong> <?php echo $this->Form->input('dob', array('type'=> 'date', 'label' => FALSE, 'dateFormat' => 'DMY', 'minYear' => date('Y') - 111, 'maxYear' => date('Y'))); ?>
当我提交表单时,我得到以下错误-
2011-12-29 00:33:57调试:通知(8):数组到字符串的转换在[C:'xampp'htdocs'dearmemoir'cake'libs'router.php, line 1573]
该字段是授权用户模型的一部分。你知道哪里出了问题吗?
这行代码为我创造了奇迹-
$this->data['User']['dob'] = date('Y-m-d', strtotime($this->data['User']['dob']));
我现在可以保存数据了!
我怀疑你找错地方了。错误信息来自CakePHP路由(router.php) -即可能是你正在使用的重定向URL。
你给出的示例代码看起来是正确的,它几乎完全匹配Cake烹饪书中的示例:
echo $this->Form->input('birth_dt', array( 'label' => 'Date of birth', 'dateFormat' => 'DMY', 'minYear' => date('Y') - 70, 'maxYear' => date('Y') - 18 ));
您可以添加对任何验证错误的检查