1. ホーム
  2. php

[解決済み] 重複】で非オブジェクトのプロパティを取得しようとする

2022-02-03 13:09:31

質問

を制御ページに追加しました。

<?php
  include 'pages/db.php'; 
  $results = mysql_query("SELECT * FROM sidemenu WHERE `menu_id`='".$menu."' ORDER BY `id` ASC LIMIT 1", $con);
  $sidemenus = mysql_fetch_object($results);
?>

をView Pageに追加しました。

<?php foreach ($sidemenus as $sidemenu): ?>
  <?php echo $sidemenu->mname."<br />";?>
<?php endforeach; ?>

エラーは

お知らせです。Trying to get property of non-object in C:\wammingwwwphonepagesinit.php on line 22

直せますか?何が起こったのか全くわかりません。

解決方法を教えてください。

のマニュアルを確認してください。 mysql_fetch_object() . これは、オブジェクトの配列ではなく、オブジェクトを返します。

あなたは、次のようなものを望んでいるのでしょう。

$results = mysql_query("SELECT * FROM sidemenu WHERE `menu_id`='".$menu."' ORDER BY `id` ASC LIMIT 1", $con);

$sidemenus = array();
while ($sidemenu = mysql_fetch_object($results)) {
    $sidemenus[] = $sidemenu;
}


PDOはいかがでしょうか? PDOStatement::fetchAll(PDO::FETCH_OBJ) は、あなたが想定したとおりのことをします。 mysql_fetch_object() を実行する