CakePHP mysql选择月份的哪一天

CakePHP mysql选择月份的哪一天,php,mysql,cakephp-1.3,Php,Mysql,Cakephp 1.3,我希望写得正确,因为我的英语不是很好。 我会从MySQL中只选择一个月的哪一天,但会给我写一个错误 控制器 $fields = array('id', 'nazov','DAY(datum) AS day','datum'); $data = $this->udalost->find('all',array('conditions'=>'MONTH(datum) = '.$month.' AND YEAR(datum) = '.$year,'fields'=>$field

我希望写得正确,因为我的英语不是很好。 我会从MySQL中只选择一个月的哪一天,但会给我写一个错误

控制器

$fields = array('id', 'nazov','DAY(datum) AS day','datum');
$data = $this->udalost->find('all',array('conditions'=>'MONTH(datum) = '.$month.' AND YEAR(datum) = '.$year,'fields'=>$fields,'order'=>'datum ASC'));
$this->set('data',$data);
Notice (8): Undefined index: day [APP\views\udalosti\calendar.ctp, line 4]
查看

echo $data["day"];
错误

$fields = array('id', 'nazov','DAY(datum) AS day','datum');
$data = $this->udalost->find('all',array('conditions'=>'MONTH(datum) = '.$month.' AND YEAR(datum) = '.$year,'fields'=>$fields,'order'=>'datum ASC'));
$this->set('data',$data);
Notice (8): Undefined index: day [APP\views\udalosti\calendar.ctp, line 4]
MySQL

CREATE TABLE `udalost` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `nazov` VARCHAR(255) DEFAULT NULL,
  `datum` datetime DEFAULT NULL,
  `text` text,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM

您能告诉我哪里有错误吗?

尝试在您的视图中调试$data

debug($data);
如果调用find方法,通常会得到多维数组

也可以这样写条件:

$data = $this->udalost->find('all',
    array(
        'conditions'=> array(
            'MONTH(datum) = '.$month,
            'YEAR(datum) = '.$year
        ),
        'fields'=>$fields,
        'order'=>'datum ASC'
     )
);

祝你好运

您没有索引“den”,但您尝试使用它。(calendar.ctp,第4行)。

很抱歉,应该是“日”而不是“日”