Rumah  >  Artikel  >  pangkalan data  >  Mengapa Saya Mendapat Ralat \"Mencuba Mendapatkan Harta Bukan Objek\" dalam CodeIgniter?

Mengapa Saya Mendapat Ralat \"Mencuba Mendapatkan Harta Bukan Objek\" dalam CodeIgniter?

Susan Sarandon
Susan Sarandonasal
2024-10-24 18:40:47619semak imbas

Why Am I Getting the

Memahami Ralat "Mencuba Mendapatkan Harta Bukan Objek" dalam CodeIgniter

Apabila cuba mengemas kini rekod pangkalan data menggunakan CodeIgniter, anda mungkin menghadapi ralat "Mencuba untuk mendapatkan harta bukan objek". Isu ini timbul apabila cuba mengakses sifat objek yang bukan contoh kelas.

Dalam konteks edit_product_view anda, anda cuba mengisi borang menggunakan objek $product, yang diambil berdasarkan pada ID produk yang dipilih. Walau bagaimanapun, anda sedang mengakses sifatnya menggunakan notasi objek ($product->prodname).

Menyelesaikan Isu: Object vs. Array Notation

CodeIgniter menyimpan data yang diambil sebagai tatasusunan, bukan objek. Oleh itu, anda harus menggunakan tatatanda tatasusunan untuk mengakses elemen individu tatasusunan $product, yang mengandungi nilai untuk medan borang anda.

Ganti baris berikut:

<code class="php"><?php echo form_input('prodname', set_value('prodname', $product->prodname)); ?>
<?php echo form_dropdown('ptname_fk', $product_types, set_value('ptname_fk', $product->ptname_fk)); ?></code>

dengan:

<code class="php"><?php echo form_input('prodname', set_value('prodname', $product['prodname'])); ?>
<?php echo form_dropdown('ptname_fk', $product_types, set_value('ptname_fk', $product['ptname_fk'])); ?></code>

Petua Tambahan

  • Pastikan tatasusunan $product anda mengandungi pasangan nilai kunci yang betul.
  • Jika anda masih menghadapi ralat , pastikan anda telah menghantar pembolehubah $product ke paparan anda dengan betul.
  • Pertimbangkan menggunakan print_r untuk memeriksa kandungan tatasusunan $product anda untuk mengesahkan bahawa ia mengandungi data yang dijangkakan.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat \"Mencuba Mendapatkan Harta Bukan Objek\" dalam CodeIgniter?. 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