проблема с codeigniter, я не знаю, что не так с моим MVC - PullRequest
0 голосов
/ 07 ноября 2019

Так что я не знаю, что не так, если это мой контроллер или моя модель в моей CodeIgniter Framework, пожалуйста, помогите. Мои таблицы не получают данные из моей базы данных, на мой взгляд.

Я перепробовал все, что видел в stackoverflow, но не могу заставить его работать, но это мой оригинальный код.

Это мой контроллер :

public function index(){

    $data['suppliers'] = $this->dashboard_model->readSupplier();
    $data['items'] = $this->dashboard_model->readItem();
    $data['users'] = $this->dashboard_model->readUser();
    $data['units'] = $this->dashboard_model->readUnit();
    $data['logs'] = $this->dashboard_model->readLogs();

            $this->global['pageTitle'] = 'Dashboard';
            $this->loadViews("pages/dashboard", $this->global, $data);

Это моя модель :

class Dashboard_model extends CI_Model{

        function readSupplier(){
            $this->db->from('suppliers');
            $this->db->limit(5);
            $this->db->order_by('supplier_id', 'DESC');
            $query = $this->db->get();
            $result = $query->result();
            return $result;
        }

        function readItem(){
            $data = array(
                'categories.category_name',
                'items.item_id',
                'items.category_id',
                'items.brand_name',
                'items.model',
                'items.serial',
                'items.unit_price',
                'items.status',
                'items.location_id',
                'suppliers.supplier_id',
                'suppliers.supplier_name'
            );
            $this->db->select($data);
            $this->db->from('items');
            $this->db->join('categories', 'categories.category_id = 
            items.category_id', 'left');
            $this->db->join('suppliers', 'suppliers.supplier_id = 
            items.supplier_id', 'left');
            $this->db->limit(10);
            $this->db->order_by('item_id', 'DESC');
            $query = $this->db->get();

            $result = $query->result();
            return $result;
}

        function readUser(){
            $this->db->from('users');
            $this->db->limit(10);
            $this->db->order_by('userId','DESC');
            $query = $this->db->get();
            $result = $query->result();
            return $result;
        }

        function readUnit(){
            $data = array(
                'l.location_name',
                'su.su_id',
                'su.unit',
                'su.motherboard',
                'su.processor',
                'su.ram',
                'su.hdd',
                'su.video_card',
                'su.lan_card',
                'su.power_supply',
                'su.location_id',
                'su.comment',
            );
            $this->db->select($data);
            $this->db->from('system_unit as su');
            $this->db->join('locations as l', 'l.location_id=su.location_id', 'left');
            $this->db->limit(10);
            $this->db->order_by('unit', 'DESC');
            $query = $this->db->get();
            $result = $query->result();
            return $result;
        }

        function readLogs(){

            $this->db->from('activities as a');
            $this->db->join('users as u', 'u.userId=a.userId', 'left');
            $this->db->limit(10);
            $this->db->order_by('userId', 'DESC');
            $query = $this->db->get();

            $result = $query->result();
            return $result;
    }
?>

Это мой просмотр :

    <th>User ID</th>
    <th>Full Name</th>
    <th>Email</th>
    </thead>
    <tbody>
    <?php
        if(!empty($users)):
            foreach($users as $user): ?>
    <tr>
    <td><?php echo $user->userId; ?></td>
    <td><?php echo $user->firstname." ".$user->lastname; ?></td>
    <td><?php echo $user->email; ?></td>
    </tr>
           <?php endforeach;
           endif;
           ?>

Ответы [ 2 ]

0 голосов
/ 12 ноября 2019

Я на самом деле вошел сейчас, и его работа, единственная проблема, которая у меня сейчас возникает, заключается в том, что она выдает мне ошибку о моей функции readLogs, но если я удалю функцию readLogs, все таблицы будут отображать свои данные, кроме журнала. История. Кстати, это ошибка.

Произошла ошибка базы данных Номер ошибки: 1052

Столбец 'userId' в предложении заказа является неоднозначным

SELECT * FROM activities asa LEFT JOIN users как u ON u. userId = a. userId ЗАКАЗАТЬ ПО userId DESC LIMIT 10

Имя файла: E: / Xammp2 / htdocs/cri-marc/system/database/DB_driver.php

Номер строки: 691

0 голосов
/ 07 ноября 2019

Проблема в методе вашего контроллера : loadViews

Способ как загрузить представление вы можете увидеть по этой ссылке.

Я думаю, что в модели все нормально. Итак, вам нужно проверить метод loadViews. И, если вы действительно хотите увидеть какой-то результат, вы можете заменить следующее:

 $this->global['pageTitle'] = 'Dashboard';
 $this->loadViews("pages/dashboard", $this->global, $data);

на

$this->load->view('pages/dashboard',$data);

Примечание: прочитайте, как использовать третий аргумент этого метода load->view может иметь значение true или false, по умолчанию это false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...