Heim >Datenbank >MySQL-Tutorial >Warum erhalte ich beim Zugriff auf MySQL-Abfrageergebnisse die Fehlermeldung „Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?

Warum erhalte ich beim Zugriff auf MySQL-Abfrageergebnisse die Fehlermeldung „Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?

Barbara Streisand
Barbara StreisandOriginal
2024-12-01 22:38:131063Durchsuche

Why Am I Getting

Versuch, auf Eigenschaften eines Nicht-Objekts zuzugreifen: Behoben

MySQL-Abfragen geben oft mehrere Zeilen zurück. Um diese Zeilen zu durchlaufen, können wir eine Schleife mit mysql_fetch_object() verwenden, um jede Zeile als Objekt abzurufen. Allerdings tritt der Fehler „Es wird versucht, eine Eigenschaft eines Nicht-Objekts abzurufen“ auf, wenn wir versuchen, auf Eigenschaften eines nicht vorhandenen Objekts zuzugreifen. Dieser Fehler weist darauf hin, dass das Abfrageergebnis leer ist.

Um dieses Problem zu beheben, können wir prüfen, ob das Abfrageergebnis vorhanden ist. Hier ist der korrigierte Code:

Kontrollseite:

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

// Check if the query result exists
if ($results) {
  $sidemenus = mysql_fetch_object($results);
}
?>

Seite anzeigen:

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

Alternativ Sie Sie können PDO mit PDOStatement::fetchAll(PDO::FETCH_OBJ) verwenden, um automatisch ein Objektarray von Ihrem abzurufen Abfrage.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Zugriff auf MySQL-Abfrageergebnisse die Fehlermeldung „Es wird versucht, die Eigenschaft eines Nichtobjekts abzurufen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn