CodeIgniter でレコードを編集しようとすると、「取得しようとしています」というメッセージが表示される場合があります。編集フォームに入力するときに「非オブジェクトのプロパティ」というエラーが発生します。このエラーは、データの取得に使用された $product 変数がオブジェクトではないことを示しています。
この問題を解決するには、オブジェクト表記ではなく配列表記を使用して配列要素にアクセスします。 $product->prodname の代わりに、$product['prodname'] を使用します。
edit_product_view.php ファイルで、次を更新します。
<code class="php"><td><?php echo form_label('Name:'); ?></td> <td><?php echo form_input('prodname', set_value('prodname', $product['prodname'])); ?></td> <td><?php echo form_label('Product Type:'); ?></td> <td><?php echo form_dropdown('ptname_fk', $product_types, set_value('ptname_fk', $product['ptname_fk'])); ?></td></code>
配列表記は要素に直接アクセスします。配列から取得し、「非オブジェクトのプロパティを取得しようとしています」エラーを解決します。これで、編集フォームにデータベースから取得したデータが正しく入力されるようになります。
以上がCodeIgniter 編集フォームの「非オブジェクトのプロパティを取得しようとしています」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。