型号:
public function fetch_emp()
{
$this->db->select('emp_id');
$this->db->from('emp');
$res=$this->db->get();
foreach($res->result() as $row)
{
$id=$row->emp_id;
$this->db->select('emp_name');
$this->db->from('employee_master');
$this->db->where('emp_id',$id);
$res=$this->db->get();
return $res->result();
}
}
控制器:
public function employee()
{
$result=$this->emp_model->fetch_emp();
if($result!=false)
$res['cmp_name']=$result;
else
$res['cmp_name']='NA';
}
$this->loadViews("emp/emp_views", $this->global, $res , NULL);
}
查看:
<?php print_r($cmp_name);?>
一旦我从数据库中获取了ID,我所有的ID都没有问题,但是当我在foreach循环中使用它来搜索ID并从另一个数据库中获取它们的名称时,它仅显示第一个ID名称...例如:如果有5个id,但是当我搜索id从另一个数据库获取名称时,它仅显示第一个id名称。我不知道是什么问题,请帮助我。
答案 0 :(得分:0)
您可以直接使用join()
这样的方法来完成它(获取名称列表):
public function fetch_emp()
{
$this->db->select('emp_name');
$this->db->from('emp');
$this->db->join('employee_master', 'employee_master.emp_id = emp.emp_id');
$res=$this->db->get();
return $res->result();
}