Rumah >pangkalan data >tutorial mysql >Mengapa Saya Mendapat 'Cuba untuk mendapatkan harta bukan objek' Apabila Mengakses Keputusan Pertanyaan MySQL?

Mengapa Saya Mendapat 'Cuba untuk mendapatkan harta bukan objek' Apabila Mengakses Keputusan Pertanyaan MySQL?

Barbara Streisand
Barbara Streisandasal
2024-12-01 22:38:13990semak imbas

Why Am I Getting

Cuba Mengakses Sifat Bukan Objek: Diselesaikan

Pertanyaan MySQL selalunya mengembalikan berbilang baris. Untuk lelaran melalui baris ini, kita boleh menggunakan gelung dengan mysql_fetch_object() untuk mengambil setiap baris sebagai objek. Walau bagaimanapun, ralat "Mencuba mendapatkan harta bukan objek" berlaku apabila kami cuba mengakses sifat objek yang tidak wujud. Ralat ini menunjukkan bahawa hasil pertanyaan kosong.

Untuk menyelesaikan isu ini, kami boleh menyemak sama ada hasil pertanyaan itu wujud. Berikut ialah kod yang diperbetulkan:

Halaman Kawalan:

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

Lihat Halaman:

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

Sebagai alternatif, anda boleh menggunakan PDO dengan PDOStatement::fetchAll(PDO::FETCH_OBJ) untuk mendapatkan semula secara automatik tatasusunan objek daripada pertanyaan anda.

Atas ialah kandungan terperinci Mengapa Saya Mendapat 'Cuba untuk mendapatkan harta bukan objek' Apabila Mengakses Keputusan Pertanyaan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn