CodeIgniter/PHP/MySQL: Retrieving data with JOIN

前端 未结 4 1939
失恋的感觉
失恋的感觉 2020-12-14 05:10

I\'m new to PHP/MySQL and super-new to CodeIgniter.. I have information in many MySQL tables. I want to retrieve it with JOIN where the tables primary keys are equal to $var

4条回答
  •  感情败类
    2020-12-14 05:18

    Jon is right. Here's an example:

    $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();
    

    This will return objects that have ->id, ->title, ->year, ->totaltime, and ->poster_url properties. You won't need the additional code to fetch the data from each row.

    Don't forget, if the Active Record syntax gets a little unwieldy, you can use full SQL queries and get the same results:

    $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();
    

    Both forms will ensure that your data is escaped properly.

    CodeIgniter Active Record

    Query Binding in CodeIgniter

提交回复
热议问题