CodeIgniter get_where
Je suis d'essayer d'utiliser get_where de récupérer une liste de tous les enregistrements de base de données où le propriétaire est égal à l'utilisateur connecté.
C'est ma fonction dans mon contrôleur;
function files()
{
$owner = $this->auth->get_user();
$this->db->get_where('files', array('owner =' => '$owner'))->result();
}
Et de mon point de vue j'ai le texte suivant;
<?php foreach($query->result() as $row): ?>
<span><?=$row->name?></span>
<?php endforeach; ?>
Lorsque j'essaie d'accéder à la vue, j'obtiens l'erreur Fatale: Appel à un membre de résultat de la fonction() sur un non-objet dans /views/account/files.php sur la ligne 1.
Demandais si quelqu'un a des idées de ce qui pourrait être avec cette?
Grâce
Vous devez vous connecter pour publier un commentaire.
CodeIgniter est un framework basé sur MVC principes. Comme un résultat, vous souhaitez généralement de séparer la logique de l'application, l'abstraction de données et de "sortie" dans leurs domaines respectifs pour CodeIgniter utilisation. Dans ce cas: les contrôleurs, modèles et vues.
Juste pour la référence, vous devez généralement avez-vous des "données" code comme un modèle de fonction, dans ce cas, le get_where fonctionnalité. Je vous suggère fortement de lire à travers des Guide De L'Utilisateur de se familiariser avec CodeIgniter, il devrait tenir la main à travers la plupart des étapes. Voir: Table des Matières (en haut à droite).
TL;DR
Pour résoudre votre problème, vous devez assurez-vous que vous passez les variables de contrôleur par le biais de votre point de vue:
Et assurez-vous d'utiliser la bonne variable dans votre point de vue:
Supprimer le résultat de la fonction comme si.
Btw. C'est une bien meilleure idée pour tester la requête pour un résultat avant de vous le retourner.