如何根据列分隔行';s值在CodeIgniter的两个表中


How to separate the rows depending of the column's value witin two tables in CodeIgniter?

我有两个表:markersmarkers_types

markers
id, type_id,    lat,    lng
1   1           42.000  2.500
2   1           41.000  2.400
3   2           40.000  2.300
markers_types
id, name,   image
1   TYPE1   type1.png
2   TYPE2   type2.png

我如何正确地从DB中检索行,例如,如果markers的第一行的列type_id设置为1,我想从其他表markers_types的相应ID输出图像,其中markers.type_id等于markers_types.id?很抱歉问了一个愚蠢的问题,但无法理解。

这是我的map_model.php:

class Map_model extends CI_Model{
    ...
    function get_coordinates(){
        $this->db->select('*');
        $this->db->from('markers');
        $query = $this->db->get();
        if($query->result() < 1)
            return false;
        else{
            $results = $query->result();
            return $results;
        }
    }
}

这是我的app/controllers/map.php:

$dbresults = $this->map_model->get_coordinates();
foreach($dbresults as $item){
    $marker = array();
    $marker['position'] = $item->lat.','.$item->lng;
    $marker['icon'] = base_url().'assets/img/ico/'.$item->image; // <-- I need to output here correct type image
    $marker['infowindow_content'] = $item->description;
    $this->googlemaps->add_marker($marker);
}

如何混合它们,以便根据标记的类型输出适当的图像?

我是MySQL的新手,所以请提前为这种基本问题道歉,我试过了,但没有找到正确的答案。

$query = $this->db->query("SELECT * FROM markers LEFT JOIN marker_types ON markers.type_id = markers_types.id");
// RETURNS AN ARRAY
$query->result_array();