Supposons que vous affichez le profil d'un utilisateur. Il est recommandé de stocker toutes les requêtes de base de données dans le MODÈLE. J'utilise ceci:
CONTRÔLEUR:
$this->load->model('Profile');
$data['row'] = $this->Profile_model->profile_read(); //get profile data
$this->load->view('profile_view', $data); //load data to view
Modèle:
function profile_read()
{
$this->db->where('user_id', $user_id);
$query = $this->db->get('user_profiles'); //get all data from user_profiles table that belong to the respective user
return $query->row(); //return the data
}
Dans le modèle que vous pouvez avoir toutes vos autres fonctions de base de données (créer, supprimer, mettre à jour)
VIEW:
<?php echo $row->name; ?>
<?php echo $row->email; ?>
<?php echo $row->about; ?>
etc
Enfin, dans la vue, vous pouvez renvoyer toutes les lignes de la table appartenant à l'utilisateur.
Une autre alternative est de stocker les données dans une session accessible n'importe où sur votre site sans interrogation à chaque fois. Certaines données idéales pour stocker dans une session est un nom d'utilisateur ou un identifiant d'utilisateur. http://codeigniter.com/user_guide/libraries/sessions.html – CyberJunkie