我想动态显示页面内容以下代码工作正常但它只显示特定id的内容...我怎样才能使其动态化?
模型
public function getAllDepartment() {
$join = $this->db->query( "Select * from labreport_db inner join patient_db on labreport_db.P_ID=patient_db.id where labreport_db.P_ID=15");
return $join->result_array();
}
控制器
public function reportDisplay(){
$data['clubs'] = $this->labdoc_model->getAllDepartment();
$this->load->view('SystemAdminUser/labreport', $data);
}
答案 0 :(得分:1)
将id保存在某个变量中:
$pid = $_REQUEST['p_id'];
// $_REQUEST['p_id'] will contain the dynamic value in it
并将此变量放在您的查询中:
where labreport_db.P_ID = $pid;
它将显示$ pid中包含的值的数据,并确保其中包含动态值。
答案 1 :(得分:1)
使用查询生成器类CI可以解决这个问题。
这就是你的代码的样子,
$id=15;
$this->db->select('*');
$this->db->from('labreport_db');
$this->db->join('patient_db', 'labreport_db.P_ID = patient_db.id');
$this->db->where('labreport_db.P_ID', $id);
$query = $this->db->get();
这是CI中使用查询构建器类进行数据库操作的标准方法,您可以在其中执行动态WHERE
条件。
只需更改$id
的值,查询就可以完成。
参考:https://www.codeigniter.com/userguide3/database/query_builder.html#selecting-data
答案 2 :(得分:1)
您可以使用此代码进行解决。
<强> Model.php 强>
public function getAllDepartment($pId) {
$join = $this->db->query( "Select * from labreport_db inner join patient_db on labreport_db.P_ID=patient_db.id where labreport_db.P_ID=".$pId);
return $join->result_array();
}
<强> Controller.php这样强>
public function reportDisplay(){
$pid = $_REQUEST['pid']; //OR $_GET['pid']; OR $_POST['pid']; You can pass your id for get content
$data['clubs'] = $this->labdoc_model->getAllDepartment($pid);
$this->load->view('SystemAdminUser/labreport', $data);
}
答案 3 :(得分:0)
有几种方法可以做到这一点。其中之一是通过CI路由能力。
<强>模型强>
public function getAllDepartment($p_id = 0) {
$join = $this->db->query( "Select * from labreport_db inner join patient_db on labreport_db.P_ID=patient_db.id where labreport_db.P_ID={$p_id}");
return $join->result_array();
}
评论:我添加了$p_id
作为变量来动态获取ID。
<强>控制器强>
public function reportDisplay($p_id = 0){
$data['clubs'] = $this->labdoc_model->getAllDepartment($p_id);
$this->load->view('SystemAdminUser/labreport', $data);
}
评论:我们还在$p_id
函数中添加了一个名为reportDisplay
的变量,并将其传递给模型的getAllDepartment()
函数。
如何动态获取报告
我不知道您的网址结构,但出于示例目的,我们可以说http://localhost/yourcontrollername/reportDisplay/
要动态访问它,只需在reportDisplay
例如: