Мне нужно получить данные из двух таблиц. Мои таблицы – «Исследование», «Пользователи» и «Субъекты»,
«Исследование» включает в себя: (id, user_id [является внешним ключом к столбцу «id» таблицы «Пользователи»], subject_id [является внешним ключом к столбцу «id» таблицы «Субъекты»], классу, Дата)
- Значение JSON кодируется дважды: как использовать fetch_assoc ()?
- Вызов функции-члена fetch () для boolean
- Продолжить вывод MYSQL в PHP
- mysql fetch связывает массив mysql fetch
- Подключение к внешнему веб-сайту с помощью PHP
«Пользователи» включают в себя: (идентификатор, имя пользователя, имя, фамилия, пароль, тип, статус, дата)
«Субъекты» включают: (id, career_id, имя, описание, часы)
Я хочу получить что-то вроде этого в конце:
У меня такие ошибки:
Вот мой код: Мой файл вида («home»):
<html> <head> </head> <body> <div class="container"> <div class="row"> <div class="col-md-12"> <h2 align="center">TABLE:Study</h2> <input id="busqueda_tabla" type="text"> <table class="table table-hover" align="center" border="1" cellspacing="0" cellpadding="0" width="700" id="tabla_busqueda"> <thead> <th>id</th> <th>User</th> <th>Subject</th> <th>Grade</th> <th>Date</th> <th>Action</th> </thead> <tbody> <?php if (count($records) > 0 && $records != false) { foreach($records as $record) { echo "<tr> <td>".$record['id']."</td> <td>".$record['user']."</td> <td>".$record['subject']."</td> <td>".$record['grade']."</td> <td>".$record['date']."</td> <td align='center'> <button type='button' class='btn btn-primary'>EDITAR</button></a> | <button type='button' class='btn btn-danger'>BORRAR</button></a> </tr>"; } } ?> </tbody> </table> </div> </div> </div> </body> </html>
Вот мой файл контроллера («Главная»):
<?php class Home extends CI_Controller{ public function __construct(){ parent::__construct(); $this->load->model("Crudmodel"); } public function index(){ # get all data in Study table $selectStudys = $this->Crudmodel->selectStudys(); foreach ($selectStudys as $key => $study) { # get UserNames $user = $this->Crudmodel->getName($study['user_id']); #get Subject Names $subject = $this->Crudmodel->getSubName($study['subject_id']); #append both NEW VALUES to same array $data[$key]['user_id'] = $user[0]['username']; $data[$key]['subject_id'] = $subject[0]['name']; } $data['records'] = $selectStudys; $this->load->view('home', $data); } } ?>
И мой файл модели («Crudmodel»):
<?php class Crudmodel extends CI_Model{ public function __construct(){ parent::__construct(); $this->load->database(); } function selectStudys() { $query= $this->db->query("SELECT * FROM Study"); $result = $query->result_array(); return $result; } function getName($name) { $query= $this->db->query("SELECT username FROM Users WHERE id = $name "); $result = $query->result_array(); return $result; } function getSubName($subject) { $query= $this->db->query("SELECT name FROM Subjects WHERE id = $subject "); $result = $query->result_array(); return $result; } } ?>
Надеюсь, вы можете мне помочь: /