CodeIgniter - Сообщение об ошибке: неопределенная переменная - PullRequest
0 голосов
/ 08 ноября 2019

У меня есть этот код, где данные, насколько я вижу, определяются, вот ошибки, которые я получаю:

Обнаружена ошибка PHP

Серьезность: Уведомление

Сообщение: неопределенная переменная: empdata

Имя файла: views / employee.php

Номер строки: 51 **

Backtrace:

Файл: C: \ xampp \ htdocs \ providentfund \ application \ views \ employee.php Строка: 51 Функция: _error_handler

Файл: C: \ xampp \ htdocs \ providentfund \ application \ library \ BaseController.php Строка:99 Функция: представление

Файл: C: \ xampp \ htdocs \ providentfund \ application \ controllers \ Employee.php Строка: 19 Функция: loadViews

Файл: C: \ xampp \ htdocs \ providentfund\ index.php Строка: 315 Функция: require_once

Контроллер:

      public function display_all()
      {
          $result=$this->Employee_model->display_all();
          $data['empdata']=$result;
         $this->loadViews("employee", $this->global, NULL);

      }

Модель:

      function display_all()
      {
      $query=$this->db->query("select * from employetbl");

      return $query->result();
      }

и вид:

    <table id="example1" class="table table-bordered table-striped">
              <thead>
              <tr>
                <th>Rendering engine</th>
                <th>Browser</th>
                <th>Platform(s)</th>
                <th>Engine version</th>
                <th>CSS grade</th>
              </tr>
              </thead>
              <tbody>
              <?php
              $cnt=1;

              foreach($empdata as $rec)
              {
                print_r($empdata);
                die();
              ?>
              <tr>
                <td><?php echo $rec['fullName'];?></td>

              </tr>
              <?php
              // for serial number increment
              $cnt++;
              } ?>

Почему я получаю сообщение об ошибке «неопределенная переменная» ?

Ответы [ 3 ]

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

контроллер

public function display_all(){
     $result=$this->Employee_model->display_all();
     $data['empdata']=$result;
     $this->load->view('employee',$data);
}
0 голосов
/ 11 ноября 2019

В контроллере

public function display_all()
      {
          $result=$this->Employee_model->display_all();
          $data['empdata']=$result;
         $this->loadViews("employee", $data);

      }

В модели

function display_all()
      {
      $query=$this->db->query("select * from employetbl");

      $result = array();
        foreach ($query->result_array() as $value) {
            $res['variable_name'] = $value['column_name'];
            array_push($result, $res);
        }
        return $result;
      }
0 голосов
/ 08 ноября 2019

Я думаю, что проблема в вашем контроллере:

public function display_all()
      {
          $result=$this->Employee_model->display_all();
          $data['empdata']=$result;
         $this->loadViews("employee", $this->global, NULL);

      }

Вы вызываете loadViews с помощью $ this-> global, но ваши "empdata" там не определены.

Вы должныпопробуйте изменить это:

$this->loadViews("employee", $this->global, NULL);

На это:

$this->loadViews("employee", $data, NULL);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...