saftmeister
Nutze den Saft!
So weit, so gut. Wenn du eine leere Seite hast, deutet das darauf hin, das entweder nix in der Datenbank drin ist, bei dem ein Datensatz in der Spalte sectionname 'test' drin steht, oder schlicht und einfach, das dein Query nicht funktioniert.
Damit du dir gleich einen guten Programmierstil angewöhnst, solltest du mit try...catch arbeiten:
Was mir auch gerade auffällt ist, das du fetch() ohne FETCH_MODE-Flag aufrufst. In der Doku steht, welche Art von Datentyp dann von fetch() an den left-Operanden ($data) zurück gegeben wird: http://de.php.net/manual/de/function.PDOStatement-fetch.php
Es handelt sich FETCH_BOTH, was eine Kombination aus indizierten und assoziativen Array ist. Folglich kannst du auf die Daten nur so zu greifen:
Soll heißen, wenn du komplett OOP arbeiten willst, musst du an fetch() als ersten Parameter den Fetchmode für Objekte (PDO::FETCH_OBJ) übergeben, wie im obigen Beispiel zu sehen.
Wenn du noch fragen hast, steh ich gern weiterhin beratend zur Seite. Im übrigen find ich gut, das du diesen Weg gehen willst, es ist eine sicherere Art, PHP zu entwickeln, viele Sachen gehen wesentlich einfacher, wenn man OOP verwendet.
Viele Leute haben das Gerücht in die Welt gesetzt, das mit PHP kein ordentlichen OOP möglich ist. Wenn man es richtig anwendet, geht das auch ^^
Damit du dir gleich einen guten Programmierstil angewöhnst, solltest du mit try...catch arbeiten:
PHP:
try {
$stmt = $dbc->prepare("SELECT sectioncontent FROM sections WHERE sectionname = :sectionname");
$stmt->bindValue(':sectionname', $_GET['section']);
if($data = $stmt->fetch(PDO::FETCH_OBJ)) {
echo $data->sectioncontent;
}
}
catch(Exception $e)
{
echo $e->getMessage();
}
Was mir auch gerade auffällt ist, das du fetch() ohne FETCH_MODE-Flag aufrufst. In der Doku steht, welche Art von Datentyp dann von fetch() an den left-Operanden ($data) zurück gegeben wird: http://de.php.net/manual/de/function.PDOStatement-fetch.php
Es handelt sich FETCH_BOTH, was eine Kombination aus indizierten und assoziativen Array ist. Folglich kannst du auf die Daten nur so zu greifen:
PHP:
echo $data['sectioncontent'];
oder
echo $data[0];
Soll heißen, wenn du komplett OOP arbeiten willst, musst du an fetch() als ersten Parameter den Fetchmode für Objekte (PDO::FETCH_OBJ) übergeben, wie im obigen Beispiel zu sehen.
Wenn du noch fragen hast, steh ich gern weiterhin beratend zur Seite. Im übrigen find ich gut, das du diesen Weg gehen willst, es ist eine sicherere Art, PHP zu entwickeln, viele Sachen gehen wesentlich einfacher, wenn man OOP verwendet.
Viele Leute haben das Gerücht in die Welt gesetzt, das mit PHP kein ordentlichen OOP möglich ist. Wenn man es richtig anwendet, geht das auch ^^