0

次のコードを使用して、データベースにクエリを実行しようとしています。

public function getFreeFields($date){
        print_r($date);
        $db = Zend_Registry::get('db');
    $select = $db->select()
        ->from(array('f' => $this->_tablename()), array('f.fie_id','f.fie_name'))
                    ->join('reservation','reservation.res_field = f.fie_id')
                    ->where('reservation.res_date_from > ?'. $date)
                    ->where('reservation.res_date_till < ?'. $date);

    $result = $db->fetchRow($select);
    $data = $this->_mapper->toObject( is_array($result) ? $result : array() );

    return $data;
    }

しかし、次のエラーでクラッシュします。

Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: no parameters were bound'

print_r の後に死ぬと、リクエストに与えた正しい日付を取得しました。

何か助けはありますか?

4

1 に答える 1

2

これを変える

->where('r.res_date_from > ?'. $date)
->where('r.res_date_till < ?'. $date);

->where('r.res_date_from > ?', $date)
->where('r.res_date_till < ?', $date);
于 2013-03-15T09:32:20.357 に答える