Blogeinträge

Für den Zugriff auf die Tabelle blogentrys, also für das Erstellen und Anzeigen der Blogeinträge erstellen wir jetzt eine Klasse blogentry in der Datei class/blogentry.class.php1) damit der Autoloader aus Schritt 1 sie findet… .

(A1)

Das Basisgerüst der blogentry-Klasse hat dieselbe Funktionalität wie die bloguser-Klasse: Im Konstruktor muss das Handle für den Datenbankzugriff "geholt" werden und als Objektvaraiable gespeichert werden.

Erstelle eine Datei mit diesem Basisgerüst, so dass in der syntax.php mit folgendem Code ein blogentry-Objekt instanziiert werden kann:

// Zugriff auf die Blogeinträge $blogentry = new blogentry($dbusername, $dbpasswd, $dbname, $dbhost);

Teste, ob dein Code fehlerfrei funktioniert.

Hilfe

Die grundlegende blogentry-Klasse ist eine Kopie des Konstruktors der bloguser-Klasse:

<?php class blogentry { protected $db; // Das DB-Handle //Konstruktor public function __construct ($dbusername, $dbpassword, $dbname, $host="localhost" ) { // PDO Connection erzeugen/holen und als // Objektattribut "speichern". Damit werden DB Zugriffe möglich. $this->db = mysqldb::getConnection($dbusername, $dbpassword, $dbname, $host); } } ?>

Methoden der Blogentry-Klasse

Jetzt müssen wie die blogentry-Klasse um weitere Funktionalitäten erweitern. dazu können wir uns zunächst überlegen, welche Funktionen die Klasse benötigt, und diese als "Interface" definieren. Man kann sich vorstellen, dass ein Interface eine Klassendatei ist, die nur die Methodenköpfe ohne Code enthält:

<?php interface blogentryInterface

{
// Alle Blogintraege anzeigen
public function show_all_entries();

// Neuen Blogeintrag hinzufügen
public function insert_entry();

// Fehlaufrufe abfangen
public function __call ($name, $param);
}

?>

←→