我无法使用CakePHP将日期字段保存到数据库中。
表格列名
[User].[dob]
查看
<?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,第1573行]中的数组到字符串转换
此字段是Auth用户模型的一部分。什么想法可能会出错?
答案 0 :(得分:2)
这行代码为我带来了魔力 -
$this->data['User']['dob'] = date('Y-m-d', strtotime($this->data['User']['dob']));
我现在可以保存数据了!
答案 1 :(得分:0)
我怀疑你在找错了地方。错误消息来自CakePHP路由(router.php) - 也就是您正在使用的重定向URL。
您提供的示例代码看起来是正确的,它几乎完全匹配Cake cookbook:
中的示例echo $this->Form->input('birth_dt', array( 'label' => 'Date of birth', 'dateFormat' => 'DMY', 'minYear' => date('Y') - 70, 'maxYear' => date('Y') - 18 ));
您可以为任何validation errors添加支票。