Der Versuch, Eigentum von Nicht-Objekten hineinzubekommen [duplicate]

Lesezeit: 2 Minuten

Der Versuch Eigentum von Nicht Objekten hineinzubekommen duplicate
Gereltod

auf der Steuerungsseite:

<?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);
?>

auf Ansichtsseite:

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

Fehler ist:

Hinweis: Versuch, die Eigenschaft von Nicht-Objekt in C:\wamp\www\phone\pages\init.php in Zeile 22 zu erhalten

Kannst du das Reparieren? Ich habe keine Ahnung, was passiert ist.

  • $sidemenu ist kein Objekt. var_dump() es und sehen, was es ist.

    – Alex

    5. Mai 2011 um 2:08 Uhr

  • #22 ist <?php echo $sidemenu->mname."<br />";?>

    – Gereltod

    5. Mai 2011 um 2:11 Uhr

  • Sie sollten überprüfen, ob Ihre MySQL-Abfrage fehlerfrei ist. $menu könnte ein leerer String sein. Das würde Ihre verursachen $sidemenu kein Objekt sein.

    – Chris Henry

    5. Mai 2011 um 2:13 Uhr

  • Abfrage funktioniert gut und gibt Daten zurück.

    – Gereltod

    5. Mai 2011 um 2:14 Uhr

Überprüfen Sie das Handbuch für mysql_fetch_object(). Es gibt ein Objekt zurück, kein Array von Objekten.

Ich vermute, du willst so etwas

$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;
}

Darf ich vorschlagen, dass Sie sich PDO ansehen. PDOStatement::fetchAll(PDO::FETCH_OBJ) macht was du vermutet hast mysql_fetch_object() machen

Der Versuch Eigentum von Nicht Objekten hineinzubekommen duplicate
Alex

Dein Fehler

Hinweis: Versuch, die Eigenschaft von Nicht-Objekt in C:\wamp\www\phone\pages\init.php in Zeile 22 zu erhalten

Dein Kommentar

@22 ist <?php echo $sidemenu->mname."<br />";?>

$sidemenu ist kein Objekt, und Sie versuchen, auf eine seiner Eigenschaften zuzugreifen.

Das ist der Grund für deinen Fehler.

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

oder

$sidemenus = mysql_fetch_array($results);

dann

<?php echo $sidemenu['mname']."<br />";?>

1646307245 199 Der Versuch Eigentum von Nicht Objekten hineinzubekommen duplicate
James

$sidemenu ist kein object, sodass Sie keine Methoden darauf aufrufen können. Es wird wahrscheinlich nicht an Ihre gesendet viewoder $sidemenus ist leer.

922950cookie-checkDer Versuch, Eigentum von Nicht-Objekten hineinzubekommen [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy