訂正してください、ありがとう! !致命的なエラー: 非オブジェクトでのメンバー関数 query() の呼び出し
前述のとおり、エラーが発生しました。致命的なエラー: D:WWW2shouclassBulletin.php の 47 行目で非オブジェクトのメンバー関数 query() を呼び出します
コードは次のとおりです:
//このクラスが使用されますテーブルを保存するには Bulletin のデータベース アクセス操作
//テーブルの各フィールドはクラスのメンバー変数に対応します
Class Bulletin
{
public $Id // レコード番号
public $Title; // アナウンスのタイトル
public $Content; // リリース日
public $Poster; 🎜> function __construct () {
// データベースに接続します
$this->conn = mysqli_connect("localhost", "root", "pass", "2shou");
mysqli_query( $this->conn , "SET NAMES gbk");
}
function __destruct() {
// 接続を閉じます
mysqli_close($this->conn);
}
// お知らせ情報を取得
function GetBulletinInfo($bid) {
// クエリの SELECT 文を設定
$sql = "SELECT * FROM Bulletin WHERE Id ='" . $bid . "' ";
// レコードセットを開きます
$results = $this->gt;conn->query($sql);
// アナウンスデータを読み取ります
if($row = $results ->fetch_row()) {
$this->Id = $bid;
$this->Title = $row[1];
$ this->Content = $row[2];
$this->PostTime = $row[3];
$this->Poster = $row[4];
}
else {
$this- >Id=0;
}
}
// すべてのアナウンス情報を取得し、結果セットを返します
function GetBulletinlist() {
//クエリの SELECT ステートメントを設定します
$sql = "SELECT * FROM Bulletin ORDER BY PostTime DESC";
$results = $this->gt;conn->query($sql);
return $results;
}
// すべてのアナウンス情報を取得し、結果セットを返します
function GetRecentBulletinlist() {
// クエリの SELECT ステートメントを設定します
$sql = "SELECT * FROM Bulletin WHERE DateDiff(day, getdate(), Posttime)<=7";
$results = $this->conn->query($sql);
return $results; }
//お知らせ情報を追加
function insert() { $sql = "速報 (タイトル、内容、投稿時刻、ポスター) VALUES ( '" . $this->タイトル . "', '" . $this->コンテンツ . "','" . $this->PostTime . "','" . $this->ポスター . " ')";
// SQL 文を実行
$this->gt;conn->query($sql);
}
// お知らせ情報を変更
関数 update ($bid) {
$sql = "UPDATE Bulletin SET Title='" . $this->Title . "', Content='" . $this->PostTime . "', Poster=' " . $this->Poster . "' WHERE Id=" . $bid;
// SQL ステートメントを実行します
$this->conn- >query($sql);
}
// お知らせ情報の一括削除
function delete($bid) {
$sql = "DELETE FROM Bulletin WHERE Id IN (" . $bid . ")";
// SQL ステートメントを実行します
$this->conn->query($sql);
}
}
?>
------解決策のアイデア----------------------
したがって、コンストラクターは次のように記述する必要があります。