我有一个基于PHP框架的站点CodeIgniter。我在从页面上的数据库表travels_detail
获取数据时遇到问题。
控制器方法:
function search_travel(){
$departure= $this->input->post('departure');
$destination= $this->input->post('destination');
$data['var']= $this->Travel->search_travel($departure, $destination);
$this->load->view('flight-list',$data);
}
模型方法:
function search_travel($departure, $destination){
$this->db->select()->from('travels_detail')->where('departure', $departure)->where('destination', $destination);
$query= $this->db->get();
return $query->result_array();
}
问题是,我想执行另一个查询,并希望从同一页面中的另一个表中获取一些数据。
例如,我从travels_detail
的{{1}}表中获取数据,我希望从airline: arik
表中获取arik
航空公司的图像。
查询应为:
airlines
我如何在CodeIgniter中执行此操作?
答案 0 :(得分:0)
逻辑是一样的。
控制器:
function search_travel() {
$departure = $this->input->post('departure');
$destination = $this->input->post('destination');
$data['var'] = $this->Travel->search_travel($departure, $destination);
// You just add an additional call to your model, for the new query
$airline = $this->input->post('airline');
$data['whatever'] = $this->Travel->travels_detail($airline);
$this->load->view('flight-list', $data);
}
型号:
function travels_detail($airline) {
return $this->db
->select('image')
->from('airlines')
->where('airline', $airline)
->get()
->result_array();
}
一些注意事项:
var
没有帮助。答案 1 :(得分:0)
我认为您只需加入两张表即可获取航空公司及其形象的信息。
codeigniter中的代码可能是这样的:
function search_travel($departure, $destination){
return $this->db
->select('travels_detail.airline, airlines.image')
->from('travels_detail')
->join('airlines', 'airlines.airline = travels_detail.airline')
->where('travels_detail.departure', $departure)
->where('travels_detail.destination', $destination)
->get()
->result_array();
}
希望这能解决您的问题。