Пагинация в Codeigniter выдает ошибку Недопустимые аргументы для foreach ()

Я пытаюсь добавить нумерацию страниц в свой проект Codeigniter, но каждый раз получаю сообщение об ошибке: Invalid arguments переданы для foreach (). Может кто-нибудь мне помочь, пожалуйста. Код в контроллере

        public function staff()
{
    $this->load->library('pagination');

    $config['base_url'] = 'staff';
    $config['total_rows'] = $this->staff_model->record_count();
    $config['per_page'] = 4;
    $config['num_links'] = 2;
    $config['use_page_numbers'] = TRUE;

    $this->pagination->initialize($config);
    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

    $data['data'] = $this->staff_model->get_staff($config["per_page"], $page);

    $data["links"] = $this->pagination->create_links();
    $this->load->view('templates/header',$data);
    $this->load->view('pages/staff',$data);
    $this->load->view('templates/footer');
    $this->load->helper('url');

}

Код на мой взгляд

     foreach ($staff as $staff_item){ ?>
            <div class = "col-md-3 col-sm-6 col-xs-12 animate-box text-center">
                <div class = "doctor border border-secondary" style = "background-color: white; border-style: solid; height: 450px;">

<a href = "<?php echo site_url('welcome/viewstaff/'.$staff_item['slug']); ?>"> <img src = "<?php echo base_url().'uploads/'.$staff_item['pic_file'] ?>" class = "img-fluid" style = "width: 253px; height: 250px"></a>
                        <div class = "desc">
<h3 ><a href = "<?php echo site_url('welcome/viewstaff/'.$staff_item['slug']); ?> " style = "color: green"><?php echo $staff_item['title']; ?>&nbsp;<?php echo $staff_item['name']; ?></a>&nbsp;<i class = "fa fa-external-link" aria-hidden = "true"></i></h3>
                        <p ><?php echo $staff_item['department']; ?></p>
                        <h3><?php echo $staff_item['designation']; ?></h3>
                    </div>
                </div>
            </div>

проверьте, определена ли переменная $ staff. Я думаю, вам следует использовать $ data вместо $ staff в foreach ().

Harshwardhan Sharma 11.12.2018 06:51
Стоит ли изучать 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 и хотите разрабатывать...
0
1
44
1

Ответы 1

Используйте этот код

public function staff()
{
    $this->load->library('pagination');

    $config['base_url'] = 'staff';
    $config['total_rows'] = $this->staff_model->record_count();
    $config['per_page'] = 4;
    $config['num_links'] = 2;
    $config['use_page_numbers'] = TRUE;

    $this->pagination->initialize($config);
    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

    //here I changed data with staff 
    $data['staff'] = $this->staff_model->get_staff($config["per_page"], $page); 

    $data["links"] = $this->pagination->create_links();
    $this->load->view('templates/header',$data);
    $this->load->view('pages/staff',$data);
    $this->load->view('templates/footer');
    $this->load->helper('url');

}

По-прежнему возникает такая же ошибка. Я сильно подозреваю, что проблема в том, как я структурировал foreach () в представлении.

Felix 11.12.2018 07:39

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