Использование HIghcharts на Codeigniter для получения имени данных и общего количества

Я просто застрял в своем коде, и я не могу продолжить свою программу, может ли кто-нибудь помочь мне, пожалуйста, сломать мою стену, и я могу продолжить свой код. Я использую highcharts на codeigniter, и это мой код:

Контроллер:

public function index()
{
    $chart=$this->Model_mou->get_data();
    $this->load->view('mou', $chart);
}

Модель:

function get_data() 
{ 
  $this->db->select('dn_ln as name, count(dn_ln) as total');
  $this->db->from('mou');
  $this->db->group_by('dn_ln');
  $query = $this->db->get();
  return $query->result();
}

Вид :

series: [{
      name: 'Precentage',
      colorByPoint: true,
      data: [
      <?php
         foreach ($chart as $x) {
         echo "['" .$x->name . "'," . $x->total ."],\n";
         }
      ?>

       ]
  }]

это моя ошибка: код сообщения об ошибке

поэтому я хочу показать имя и общую сумму на круговой диаграмме. Я надеюсь, что кто-то там может помочь мне проверить мой код и исправить его. Спасибо.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
154
1

Ответы 1

В Codeigniter представление ожидает получить данные от контроллера в виде массива. Внутри представления вы получаете доступ непосредственно к элементу массива, а не к самому массиву.

Итак, если вы передаете $chart в представление, а $chart содержит $name и $total, вы называете их.

Вы можете немного «взломать» поведение контроллера (чтобы вы все еще могли использовать $chart в представлении), поместив $chart внутри массива, который затем передается в представление. Попробуй это:

public function index()
{
    $chart=$this->Model_mou->get_data();
    $viewdata = array(
        'chart' => $chart,
    );

    $this->load->view('mou', $viewdata);
}

Сделав это небольшое изменение в вашем контроллере, ваше представление начнет работать так, как вы ожидаете (поскольку он возьмет элемент $chart, который сам является массивом, из массива $viewdata, который был передан с контроллера)

Другие вопросы по теме