![](/img/trans.png)
[英]CodeIgniter: Displaying data from two tables in a view - use one loop?
[英]Get Data from two tables in one view (depending queries) in Codeigniter
我正在使用CodeIgniter Framework,我有兩個li標記,我想用第一個表的所有數據填充第一個li,並根據ID(如果從第一個表和第二個表匹配)進行驗證,我還有另一個選擇查詢,該查詢獲取數據並顯示它在第二個li標簽中。 這是核心php中的工作代碼,但不能在CodeIgniter中運行,但是問題是我只能從一個表中獲取數據並將其從controller傳遞給視圖。請幫助我如何在視圖中使用兩個表數據。
<?php
$sql = 'SELECT * FROM course_sections ORDER BY item_order ASC';
$query = $pdo->prepare($sql);
$query->execute();
$list = $query->fetchAll();
foreach ($list as $rs) { ?>
<li style="sample_style"> <?=$rs['title'];?> </li>
<?php
$sql = 'SELECT * FROM course where itemid = :pid ORDER BY item_order ASC';
$query = $pdo->prepare($sql);
$query->bindParam(':pid', $rs['id'], PDO::PARAM_INT);
$query->execute();
$f_list = $query->fetchAll();
foreach ($f_list as $get_final_list) { ?>
<li style="sample_style"> <?=$get_final_list['title'];?> </li>
<? } } ?>
CodeIgniter代碼:
型號功能:
function get_all_topics()
{
$this->load->database();
$this->db->select("*");
$this->db->from("course_sections");
$this->db->order_by("item_order", "ASC");
$query=$this->db->get();
return $query->result();
}
控制器功能:
function index()
{
$this->load->model('drag_drop_model');
$data['query']=$this->drag_drop_model->get_all_topics();
$this->load->helper('url');
$this->load->view('drag_drop_course_material', $data);
}
試試這個代碼,
您的型號代碼:-
function get_all_topics()
{
$this->load->database();
$this->db->select("cs.title,group_concat(c.title) as course_title");
$this->db->from("course_sections cs");
$this->db->join("course c","c.id=cs.itemid","left");
$this->db->order_by("cs.item_order", "ASC");
$this->db->group_by("c.id");
$query=$this->db->get();
return $query->result();
}
並且在您的競爭中:-
foreach ($list as $rs) { ?>
<li style="sample_style"> <?=$rs['title'];?> </li>
$f_list = explode(",",$rs['course_title']);
foreach ($f_list as $get_final_list) { ?>
<li style="sample_style"> <?=$get_final_list;?> </li>
<? } } ?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.