我有 2表如下
项目
id | name | address
BOQ
id | project_id |item_no | description
project_id 是外键。然后我已经从项目表中加载了所有数据。然后我想在点击项目名称时将所有数据加载到与项目ID相关的boq表中。这是我的代码。但它不起作用。任何人都可以帮助我。
控制器
function show_boq() {
$id = $this->uri->segment(3);
$data['projects'] = $this->project_list_model->show_projects();
$data['boq'] = $this->project_list_model->show_boq($project_id);
$this->load->view('boq_doc', $data);
}
模型
function show_boq($id){
$this->db->select('*');
$this->db->from('boq');
$this->db->where('project_id',$data);
$this->db->join('project', 'project.id = boq.project_id');
$query = $this->db->get();
$result = $query->result();
return $result;
}
查看
<?php foreach ($boq as $boq): ?>
<tr>
<td><?php echo $boq->id; ?></td>
<td><?php echo $boq->item_no; ?></td>
<td><?php echo $boq->description; ?> </td>
</tr>
<?php endforeach; ?>
答案 0 :(得分:0)
使用这样的模型。使用项目表作为第一个和boq表作为第二个。
function show_boq($data){
$this->db->select('*');
$this->db->from('project');
$this->db->join('boq', 'project.id = boq.project_id');
$this->db->where('project.id',$id);
$query = $this->db->get();
$result = $query->result();
}
视图文件是
<?php
if (is_array($boq) || is_object($boq))
{
foreach ($boq as $row): ?>
<tr>
<td><?php echo $row->id; ?></td>
<td><?php echo $row->item_no; ?></td>
<td><?php echo $row->description; ?> </td>
</tr>
<?php endforeach;
}
?>