如何在codeigniter中显示两个表中的数据,一对多



我有两个表SQL

  1. 表用户

    • no_kk
    • 名称
  2. 表kk

    • id
    • 名称_kk
    • 状态
    • 教育
    • no_id

    在这种情况下no-kk与no_id的关系。我将通过参数no_kk显示所有特定数据,请帮助我,感谢所有

Use join query for this.    
sample for user table:      
$this->db->select('kk.*,users.*')->join('users', 'users.no_kk = kk.no_id');
$this->db->where('kk.no_id', $no_kk);
$query = $this->db->get();      

您可以按照以下组成查询

public function get_data($id){
$this->db->select('*');
$this->db->from('kk');
$this->db->join('users','kk.no_id = users. no_kk');
$this->db->where('kk.no_id = "$id"');
$result_set = $this->db->get();
if($result_set->num_rows() > 0){
return $result_set->result();
}else{
return FALSE;
}
}

将您的用户id传递给模型并返回结果集。

在控制器中,加载视图时,传入从模型返回的数组。

public function your-controller-method(){
$data['result'] = $this->your-model->get_data($user_id);
$this->load->view('your-view-name',$data);
}

我希望这对你有帮助。

在视图页面中,您可以这样以表格格式或任何其他您喜欢的格式显示。

以表格格式查看页面代码:

<?php foreach ($result as $row): ?>
<tr><td><?php echo $row['fieldname'];?></td>
<td><?php echo $row['fieldname1'];?></td>
<td>...</td>.......
</<tr>
<?php endforeach ?>

我已经阅读了您的问题,您已经通过使用联接查询从两个表中获取数据,但目前,您的问题是展示如何在表视图中查看这些数据。为此,您必须在不同的文件夹中创建一些文件

在视图

使用for each循环在表视图中提取数据

<?php if (!empty($users)) 
{
foreach ($users as $user) 
{ ?>        
<tr>    
<td>    <?php echo $user['name'] ?>     </td>
<?php
}
?>      
</tr>   
<?php
}
}  
?>

并在控制器文件中添加查看功能

public function view()
{
$this->load->model('uModel');
$data['users']= $this->uModel->All();
$this->load->view('list' , $data);  
}

并在模型文件中添加此功能

public function All()                   
{
return $users = $this->db->get('users')->result_array();
}

它肯定会帮你的感谢

相关内容

  • 没有找到相关文章

最新更新