如何在CodeIgniter 3中实现点击表格行跳转视图并获取对应数据
解决方法
1. 修改表格中的View链接,传递用户唯一标识
首先要在View的跳转链接里带上当前行用户的唯一ID(比如col_user_id,请替换成你数据表中实际的用户唯一字段),后端才能通过这个ID定位到具体用户:
<tbody> <?php foreach($peoplelist as $row): ?> <tr> <td> <?php echo $row->col_full_name; ?></td> <td><?php echo $row->col_lcomp_name; ?></td> <td> <a href="<?php echo site_url('Users/borrowerdetails/' . $row->col_user_id); ?>" role="button" class="btn btn-link btn-xs">View</a> </td> </tr> <?php endforeach; ?> </tbody>
2. 在Users控制器中处理请求并查询数据
打开Users.php控制器,找到borrowerdetails方法,接收传递的ID,查询对应用户的详细数据后传递给详情视图:
public function borrowerdetails($userId) { // 直接用数据库查询类获取数据(替换your_table_name为你的表名) $userData = $this->db->where('col_user_id', $userId)->get('your_table_name')->row(); // 将数据传递到详情视图 $data['user'] = $userData; $this->load->view('user_details', $data); }
如果你有对应的模型,也可以用模型方法查询,比如
$this->User_model->get_user_by_id($userId)
3. 在详情视图中展示数据
创建或修改详情视图(比如user_details.php),直接调用传递过来的$user对象展示数据:
<h2><?php echo $user->col_full_name; ?> 的详细信息</h2> <p>所属公司:<?php echo $user->col_lcomp_name; ?></p> <!-- 这里可以添加更多需要展示的用户字段 -->
这样点击每行的View按钮后,就会跳转到详情页面并展示对应用户的所有数据了。
内容的提问来源于stack exchange,提问作者charlesultor
相关产品推荐
相关产品推荐

