Hallo,
ich bin einen neulinge im PHP. Ich habe eine 1 zu n Beziehung zwischen 2 Klassen und ich möchte bei der Klasse(Frageabschnitt) wo n ist die fremdschlüssel von der Klasse(Fragebogen) mitnehmen.
Wie kann ich das im PHP machen?
Meine Pseudocode:
<?php class Frageabschnitt{private $dbh; private $statement; private $stmt; public function \_\_construct() { require\_once '/db\_connection.php'; $db = new ConnectionFactory(); if(isset($db)) $this-\>dbh = $db-\>getConnection(); else echo " **Fehler im Konstruktor**"; } public function frageabschnittEinfuegen($thema, $titel, $datum, $kommentar) { //ICH BEKOMME HIER EINE FEHLER if ($row = $this-\>stmt-\>pruefFragebogen($titel, $datum, $kommentar)) { if (!$statement=$this-\>dbh-\>prepare('INSERT INTO frageabschnitt (idfragebogen, titel) VALUES (:blush:row, :titel)')) { throw new Exception ('PDO::stuck\_out\_tongue:repare fehlgeschlagen!'); } if (!$statement-\>bindParam(':titel',$titel)) { throw new Exception ('PDOStatement::bindParam fehlgeschlagen!'); } if(!$statement-\>execute()){ throw new Exception('PDOStatement::execute fehlgeschlagen'); } } else{ echo 'Fatal Error!'; } } public function pruefFragebogen($titel, $datum, $kommentar) { $fragebogenID =-1; if (!$statement=$this-\>dbh-\>prepare('SELECT idfragebogen FROM fragebogen WHERE titel = :titel AND datum = :datum AND kommentar=:kommentar')) { throw new Exception ('PDO::stuck\_out\_tongue:repare fehlgeschlagen!'); } if (!$statement-\>bindParam(':titel',$titel) || !$statement-\>bindParam(':datum',$datum) || !$statement-\>bindParam(':kommentar',$kommentar) ) { throw new Exception ('PDOStatement::bindParam fehlgeschlagen!'); } if(!$statement-\>execute()){ throw new Exception('PDOStatement::execute fehlgeschlagen'); } if(!$fragebogenID = $statement-\>fetch(PDO::FETCH\_OBJ)) { throw new EXception('PDOStatement::fetch fehlgeschagen!'); } //id der Fragebogen zurückgeben return $fragebogenID-\>idfragebogen; } } ?\>