Maison  >  Article  >  base de données  >  Pourquoi est-ce que j'obtiens l'erreur « Essayer d'obtenir la propriété d'un non-objet » dans CodeIgniter ?

Pourquoi est-ce que j'obtiens l'erreur « Essayer d'obtenir la propriété d'un non-objet » dans CodeIgniter ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-24 18:40:47619parcourir

Why Am I Getting the

Comprendre l'erreur « Essayer d'obtenir la propriété d'un non-objet » dans CodeIgniter

Lorsque vous essayez de mettre à jour un enregistrement de base de données à l'aide de CodeIgniter, vous peut rencontrer l'erreur « Essayer d'obtenir la propriété d'un non-objet ». Ce problème survient lorsque vous tentez d'accéder aux propriétés d'un objet qui n'est pas une instance d'une classe.

Dans le contexte de votre edit_product_view, vous essayez de remplir un formulaire à l'aide de l'objet $product, qui est récupéré en fonction sur l'ID produit sélectionné. Cependant, vous accédez à ses propriétés en utilisant la notation objet ($product->prodname).

Résoudre le problème : notation objet ou tableau

CodeIgniter stocke les données récupérées sous forme de tableaux, pas d'objets. Par conséquent, vous devez utiliser la notation matricielle pour accéder aux éléments individuels du tableau $product, qui contient les valeurs de vos champs de formulaire.

Remplacez les lignes suivantes :

<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>

par :

<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>

Conseils supplémentaires

  • Assurez-vous que votre tableau $product contient les paires clé-valeur correctes.
  • Si vous rencontrez toujours l'erreur , vérifiez que vous avez correctement transmis la variable $product à votre vue.
  • Envisagez d'utiliser print_r pour inspecter le contenu de votre tableau $product afin de vérifier qu'il contient les données attendues.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn