0

私は英語が苦手なので、正しく書きたいと思っています。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);

見る

echo $data["day"];

エラー

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

エラーが発生した場所を教えてください。

4

2 に答える 2

1

ビューで$dataをデバッグしてみてください:

debug($data);

find メソッドを呼び出すと、通常は多次元配列が取得されます。

また、次のように条件を記述します。

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

幸運を!

于 2012-05-15T14:37:14.137 に答える
0

インデックス「den」を持っていませんが、それを使用しようとしています。(calendar.ctp、4 行目)。

于 2012-05-15T14:42:39.697 に答える