все, что вам нужно, это поле БД, называемое «день рождения» или что-то типа «дата».
echo $this->Form->input('birthday');
Вот и все
Я рекомендую добавить пустой => '- -' в массив опций.
Я также использую мин и макс в течение многих лет, что весьма полезно:
'minYear'=>date('Y')-USER_AGE_MAX, 'maxYear'=>date('Y')-USER_AGE_MIN+1
тогда как эти две константы определены в моей начальной загрузке. вы также можете использовать Configure :: write () и read () для него. Макс в моем случае 99 и мин 9
для "немецкой" формы это будет тогда
echo $this->Form->input('birthday', array('dateFormat'=>'DMY', 'minYear'=>date('Y')-USER_AGE_MAX, 'maxYear'=>date('Y')-USER_AGE_MIN+1, 'empty'=>array('- -')));