Я пытаюсь перейти от своего контроллера к виду, как …
public function playerslist() { $this->load->database(); $data = $this->db->get('skaters'); $this->load->helper('url'); $this->load->view('playerslist', $data); }
и, на мой взгляд, …
<?php echo $data; ?>
но я получаю эту ошибку …
Возникла ошибка PHP
Уровень важности: уведомление
- Модель вызова CodeIgniter для просмотра?
- Данные Flash CodeIgniter
- Разбивка страницы не соответствует номерам отображаемых страниц. Codeigniter
- CodeIgniter: неправильно загружать файл mime type
- Многомерное хранилище массивов CodeIgniter в одной колонке базы данных mysql
Сообщение: неопределенная переменная: данные
Имя файла: views / playerslist.php
Номер строки: 76
Что я делаю не так?
То, что я хотел бы сделать с этими данными, помещается в оператор foreach и отображает все в массиве $ data
foreach($data as $value => $key){ echo $key . "<br/>"; }
Спасибо, J
Вы не можете получить доступ к $data
прямо из вашего представления. Данные $data
, передаваемые вашему представлению, должны быть ассоциативным массивом. Затем ключи будут преобразованы в переменные в вашем представлении.
Например:
$data = array( 'name' => 'John', 'bars' => 23 ); $this->load->view('playerslist', $data);
Затем, по вашему мнению, они будут преобразованы в переменные:
<?php echo $name; ?> has <?php echo $bars; ?> bars of chocolate.
Если вы хотите получить доступ к данным в исходном формате, передайте их в ассоциативный массив:
$data = $this->db->get('skaters')->result(); $this->load->view( 'playerslist', array('data' => $data) );
основанный на вашем вопросе и пример кода, я заключаю, что вы хотите получить данные из таблицы «фигуристы» и отобразить их в поле зрения.
$this-> db-> get ('skaters'); //not return result object or array
Вам нужно изменить код
$ this-> db-> get ('skaters') -> result (); // return object
или
$ this-> db-> get ('skaters) -> result_array (); //return array
проверьте эту ссылку http://ellislab.com/codeigniter/user-guide/database/results.html
Данные передаются от контроллера к представлению посредством массива или объекта во втором параметре функции загрузки вида. Затем codeigniter будет извлекать второй параметр, используя функцию «extract» http://php.net/manual/en/function.extract.php
public function playerslist () { $ this-> load-> database (); $ data = $ this-> db-> get ('skaters') -> result (); $ this-> load-> helper ('url'); $ this-> load-> view ('playerslist', array ('data' => $ data)); }