Jon a raison. Voici un exemple :
$this->db->select('movies.id,
movies.title,
movies.year,
movies.runtime as totaltime,
posters.poster_url');
$this->db->from('movies');
$this->db->join('posters', 'movies.id= posters.id');
$this->db->where('movies.id', $id);
$q = $this->db->get();
Cela renverra les objets qui ont les propriétés ->id, ->title, ->year, ->totaltime et ->poster_url. Vous n'aurez pas besoin du code supplémentaire pour récupérer les données de chaque ligne.
N'oubliez pas que si la syntaxe d'Active Record devient un peu compliquée, vous pouvez utiliser des requêtes SQL complètes et obtenir les mêmes résultats :
$sql = "SELECT movies.id,
movies.title,
movies.year,
movies.runtime as totaltime,
posters.poster_url
FROM movies
INNER JOIN posters ON movies.id = posters.id
WHERE movies.id = ?"
return $this->db->query($sql, array($id))->result();
Les deux formulaires garantiront que vos données sont correctement échappées.
Enregistrement actif CodeIgniter
Liaison de requête dans CodeIgniter