-3
<?php

// Forum Configuration
define('DB_HOST','localhost'); // Database Hostname
define('DB_USER','root'); // Database Username
define('DB_PASSWORD',''); // Database Password
define('DB_NAME','ultraforum'); // Database Name
define('WEB_NAME','Website Name'); // Website Name
define('WEB_TITLE','Website Title'); // Website Title


// Do not modify anything under this line :)

class db {

    var $dbhost;
    var $dbuser;
    var $dbpassword;
    var $dbname;
    var $query;

    function connect() {
        $this->db =
            new mysqli($this->dbhost, $this->dbuser, $this->dbpassword, $this->dbname);
    }

    function __construct() {
        $this->dbhost = DB_HOST;
        $this->dbuser = DB_USER;
        $this->dbpassword = DB_PASSWORD;
        $this->dbname = DB_NAME;
    }
}

そしてDBを拡張する私のフォーラムクラス

class forum extends db{

    public function __construct() {
        parent::__construct();
    }

    function displayInfo () {
        $this->forumInfo =
        $getInfo = $db->db->query("SELECT * FROM threads");
        while($getI = $getInfo->fetch_object()) {
            return $getI->Title;
        }
    }
}

2 番目のクラスでは、mysqli データベースからすべてのスレッドを取得したいと考えています。接続情報が欲しかったので、最初のクラスから拡張しました。これは、クラスを実装する方法です:

 $ThreadInfo = new forum;
 $ThreadInfo->displayInfo();

しかし、私は得る

Notice: 未定義のプロパティ: forum::$db 行 42
致命的なエラー: 行 42 の非オブジェクトに対するメンバー関数 query() の呼び出し

4

4 に答える 4