Maison >base de données >tutoriel mysql >Comment corriger l'erreur « Essayer d'obtenir la propriété d'un non-objet » dans les formulaires de mise à jour CodeIgniter ?
Lorsque vous essayez de remplir un formulaire de mise à jour dans CodeIgniter, vous pouvez rencontrer le redoutable « Essayer de obtenir la propriété du non-objet". Ce problème survient lorsque vous essayez d'accéder à des propriétés inexistantes dans un objet.
Pour résoudre cette erreur, vous devez vous assurer que vous utilisez la notation correcte pour récupérer les valeurs de votre tableau de données. CodeIgniter vous permet d'accéder aux éléments du tableau de deux manières :
Dans votre cas, le problème réside dans vos appels set_values(). Vous utilisez incorrectement la notation d'objet (par exemple, $product->prodname) au lieu de la notation de tableau (par exemple, $product['prodname']).
Code corrigé :
<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>
N'oubliez pas que la notation matricielle utilise des crochets, tandis que la notation objet utilise le symbole de flèche. En utilisant la notation matricielle, vous accédez directement aux éléments du tableau $product plutôt que d'essayer de récupérer les attributs d'un objet inexistant.
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!