Sebastian Grommes: PHP OOP BOARD

Beitrag lesen

So,

ich habe dann jetzt mal Singleton verwendet (ich hoffe, dass ich es richtig gemacht habe - ich kenne mich damit eigentlich überhaupt nicht so aus). Code:

<?

error_reporting(E_ALL);

class DB {
     private $connection;
     static private $instance;

static public function construct() {
          if (!self::$instance) {
               self::$instance = new DB();
          }
          return self::$instance;
     }
     public function connect() {
          include ("configs.php");
          $this->connection = mysql_connect($server,$user,$pass) or die(mysql_error());
          mysql_select_db($db,$this->connection) or die(mysql_error());
     }
     public function query($query) {
          $ergebnis = mysql_query($query,$this->connection) or die(mysql_error());
          return $ergebnis;
     }
     public function close() {
          mysql_close($this->connection);
     }
}

$DB = DB::construct();

class Board {
     public $Subboard = array();
     public $Themen = array();
     public $Antworten = array();

function show() {
       $DB->connect();
       $ergebnis = $DB->query("SELECT subboard,threads,answers FROM board");
          while ($res=mysql_fetch_assoc($ergebnis)) {
               array_push($this->Subboard,$res[subboard]);
               array_push($this->Themen,$res[threads]);
               array_push($this->Antworten,$res[answers]);
          }
          foreach($this->Subboard as $var) {
               echo "Subboard: " . $var . "<br>";
          }
          foreach($this->Themen as $var) {
               echo "Themen: " . $var . "<br>";
          }
          foreach($this->Antworten as $var) {
               echo "Antworten: " . $var . "<br>";
          }
          $DB->close();
     }

function add() {
          $DB->connect();
          $DB->query("INSERT INTO board (subboard,threads,answers) VALUES ('nedias','5','20')");
          $DB->close();
     }
}

$Board = new Board();
//$Board->add();
$Board->show();

?>

Aber es funktioniert nicht. Könnte mir jemand freundlicherweise sagen, warum denn Bitte immer noch gesagt wird, dass z.B. in Zeile 37 keine Instanz vorhanden ist?

Vielen Dank!

Sebastian Grommes