Message: Invalid argument supplied for foreach () в CodeIgniter

У меня есть эта ошибка с CodeIgniter в моем виде, я хочу напечатать стоимость в таблице и меня помечает эта ошибка. Я - что-то новое в CodeIgniter.

В начало ее ты видел я поместил этот код:

<?php if(isset($registros[0])){?>

С которым уже меня не помечает ошибка, но равного способа таблица продолжает быть пустой, не приносит данные или места в array.

Кто-то мог бы основываться в решении проблемы? Чтобы печатать данные. Заранее, спасибо.

Вид (recibos_tabla.php):

<table class="table datatable no-margin" style="width:100%" id="tblRecibos">
<thead>
    <th>#</th>
    <th>Cliente</th>
    <th>Total</th>
    <th>Emisión</th>
    <th>Estado</th>
    <th>Opciones</th>
</thead>
<tbody>

    <?php foreach ($registros as $index => $recibo): ?> 

        <tr data-id="<?php echo $recibo['id'] ?>">
            <?php
                if ($recibo['status'] == 1) {
                    $status = "<label class='label label-success'>Normal</label>";
                    $btnStatus = "<button type='button' data-id='".$recibo['id']."' data-status='".$recibo['status']."' class='btn btn-sm btn-danger btn-toggle-log'><i class='fas fa-toggle-off'></i></button>";
                }
                else if ($recibo['status'] == 0) {
                    $status = "<label class='label label-danger'>Cancelada</label>";
                    $btnStatus = "<button data-id='".$recibo['id']."' type='button' data-status='".$recibo['status']."' class='btn btn-sm btn-success btn-toggle-log'><i class='fas fa-toggle-on'></i></button>";
                }
                else {
                    $status = "<label class='label label-primary'>Cortesia</label>";
                }
                $btnEdit = "<button type='button' data-id='".$recibo['id']."' class='btn btn-sm btn-warning btn-edit-log'><i class='fas fa-edit'></i></button>";
                $fecha = new datetime($recibo['f_recibo']);

            ?>
            <td><?php echo $index + 1 ?></td>
            <td data-cliente="<?php echo $recibo['id_cliente'] ?>"><?php echo $recibo['cliente'] ?></td>
            <td><?php echo $recibo['total'] ?></td>
            <td><?php echo $fecha->format("d/m/Y") ?></td>
            <td><?php echo $status ?></td>
            <td>
                <?php 
                    echo $btnEdit;
                    echo "&nbsp;".$btnStatus;
                    echo "&nbsp;<button type='button' class='btn btn-sm btn-primary btn-imprimir'><i class='fas fa-print'></i></button>"
                ?>
            </td>
        </tr>
    <?php endforeach; ?>

</tbody>

Драйвер (Recibos.php)

public function data () {
        if (hasAccess($this->session->userdata("id_perfil"), $this->modulo['id'])) {
            $answ['data'] = $this->Modelo->listar($this->lista_recibos);
            if ($answ['data']) {
                $answ['code'] = 1;
                foreach ($answ['data'] as &$recibo)
                    $recibo['servicios'] = $this->RecibosModelo->servicios($recibo['id']);
            }
            else $answ['code'] = 0;
            echo json_encode($answ);
        }
    }

Модель (RecibosModelo.php):

<?php 
defined('BASEPATH') OR exit('No direct script access allowed');

class RecibosModelo extends CI_Model {

    public function __construct() {
        parent::__construct();
    }

    public function servicios ($idRecibo) {
        $this->db->where("id_recibo", $idRecibo);
        $servicios = $this->db->get("listar_detalle_recibos");
        if ($servicios->num_rows() > 0)
            return $servicios->result_array();
        return false;
    }
}
0
задан 05.09.2019, 20:51
2 ответа

Это просто происходит, потому что аргумент, который ты перемещаешь foreach, не может пробегаться, уже будьте, потому что это не ни ни один array также один object, лично я рекомендую использовать тебе:

if (is_array($values) || is_object($values))
{
    foreach ($values as $value)
    {
        ...
    }
}

ты Можешь реализовывать один var_dump() из договоренности, которую ты перемещаешь foreach, чтобы знать, содержит ли он элементы и понимать, что то, что нужно.

0
ответ дан 07.09.2019, 01:28

Большое спасибо уже encontrГ© ошибка, как кажется, он не властвовал всем, чтобы называть правильно данные в ней funciГіn, большое спасибо из-за Вашей опоры.

0
ответ дан 07.09.2019, 01:28

Теги

Похожие вопросы