class Event extends DB_CONNECTION {
private $EVNT_ID;
private $Organizer;
private $name;
private $venue;
private $discription;
private $picture;
private $Address;
private $start_datetime;
private $end_datetime;
private $category;
private $topic;
private $Ticket;
private $Sponsor;
private $Special_guest;
private $active;
function __construct(Organizer $org) {
$this->Organizer = $org;
$this->Ticket = Ticket::get_tickets($this);
$this->Sponsor = new Sponsor($this);
parent::__construct();
}
}
public function fetch_events() {
$sql = "SELECT * ";
$sql .= "FROM `event` ";
$sql .= " ORDER BY `EVNT_ID` DESC LIMIT 21 ";
$this->data_set = self::query($sql);
$this->data_set->setFetchMode(PDO::FETCH_CLASS, 'Event');
$events = $this->data_set->fetchAll();
return (isset($events)) ? $events : false;
}
これは バイパスPDOコンストラクタフェッチパラメータエラー
私のイベントクラスのコンストラクタ
ある現在のデータベース接続のためのPHPおよびPDOを使用して、イベント管理システムを開発。SQLクエリでオブジェクトを初期化するために、フェッチモードオプションとしてPDOを選択しました。コンストラクターエラーが発生します。
PDOがそのクラスからデータをフェッチするときに"cannot recreate __construct "
エラーを発行するため、引数にコンストラクタを使用できません。
これを回避する方法はありますか?または、クラスの構造を変更して、init()
関数を使用して、__constructorを使用する代わりにオブジェクトを初期化する必要がありますか?
ここでPDOが果たす役割の正確さ、全体的なデザイン、エラーをトリガするコード行は明確ではありません。質問を編集し、問題を再現する有効なコードを共有してください。 –