#join #codeigniter-3 #hmvc
#Присоединиться #codeigniter-3 #hmvc
Вопрос:
Я новичок в CodeIgniter. Я отображаю только свою первую таблицу, но у меня нет идеи объединять и отображать мою вторую таблицу одновременно, я попробовал руководство $this->db->join();
codeigniter3, но все равно застрял в своем проекте.
Контроллер:
function ez($id) {
$this->load->model('Join_model');
$data['results']= $this->Join_model->getalldata($id);
$this->load->view('join_view',$data);
}
Модель:
function getalldata($id) {
$this->db->where('id',$id);
$query = $this->db->get('tickets');
if($query){
return $query->row();
}
}
число просмотров
<div class="col-sm-4 invoice-col">
<b>Ticket ID:</b>amp;nbsp <?php echo $results->id; ?><br>
<b>Business Name:</b>amp;nbsp <?php echo $results->bus_name; ?><br>
<b>Full Address:</b>amp;nbsp <?php echo $results->address; ?><br>
<b>Owner Name:</b>amp;nbsp <?php echo $results->owner_name; ?><br>
<b>Phone Number:</b>amp;nbsp <?php echo $results->owner_number; ?><br>
<b>Point Person:</b>amp;nbsp <?php echo $results->pt_person; ?><br>
<b>Phone Number:</b>amp;nbsp <?php echo $results->pt_person_number; ?><br>
</div>
таблица1
CREATE TABLE `tickets` (
`id` int(11) NOT NULL,
`as_name` varchar(50) NOT NULL,
`create_date` datetime NOT NULL,
`bus_name` varchar(255) NOT NULL,
`address` varchar(255) NOT NULL,
`owner_name` varchar(255) NOT NULL,
`owner_number` int(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
таблица2
CREATE TABLE `tickets_reply` (
`id` int(11) NOT NULL,
`tickets_id` int(11) NOT NULL,
`remarks` varchar(255) NOT NULL,
`comment` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Ответ №1:
pt_person и pt_person_number, указанные в вашем файле представления, отсутствуют ни в одной из таблиц, на которые вы ссылались. Тем не менее, я думаю, это то, что вы ищете.
function getalldata($id) {
$this->db->select('t.id, t.bus_name, t.address, t.owner_name, t.owner_number'); // add more columns here
$this->db->where('id', $id);
$this->db->from('tickets t');
$this->db->join('tickets_reply tr', 't.id = tr.tickets_id', 'left');
return $this->db->get()->row_object();
}
Подробнее о методе объединения читайте здесь https://codeigniter.com/userguide3/database/query_builder.html ?выделить = присоединиться#CI_DB_query_builder::присоединиться