簡體   English   中英

錯誤未定義的變量:結果+錯誤為CodeIgniter 2中的foreach()提供了無效的參數

[英]Error Undefined variable: result + Error Invalid argument supplied for foreach() in CodeIgniter 2

嗨,我試圖在我的視圖中放置foreach塊,但在這里遇到2個錯誤:

A PHP Error was encountered

Severity: Notice

Message: Undefined variable: result

A PHP Error was encountered

Severity: Warning

Message: Invalid argument supplied for foreach()

這是我的看法:

<?php foreach($result as $data_barang):?>
 <tr>
  <td><?php echo $data_barang->barang.kode_item;?></td>
  <td><?php echo $data_barang->nama_item;?></td>
  <td><?php echo $data_barang->nama_ruang;?></td>
  <td><?php echo $data_barang->jml_item_kondisi;?></td>
  <td><?php echo $data_barang->kondisi;?></td>
 </tr>
<?php endforeach;?>

另外,如果需要的話,我將模型和控制器放在這里:

控制器:

public function index(){
    // load data barang yg akan ditampilkan
    $data['result']=$this->admin_model->get_data_table()->result_array();

    // load view
    $this->load->view('dashboard_admin');
}

*注意:我也嘗試過->result()

型號

function get_data_table(){
    $query_result = $this->db->query('SELECT barang.kode_item, nama_item, nama_ruang, jml_item_kondisi, kondisi 
        FROM barang 
        INNER JOIN info_barang ON barang.kode_item = info_barang.kode_item 
        INNER JOIN (
            SELECT ruang.nama_ruang, campur_table.kode_item 
            FROM ruang 
            INNER JOIN rekap_isi_ruang AS campur_table ON campur_table.nomor_ruang = ruang.nomor_ruang) AS barang_campur 
        ON barang.kode_item = barang_campur.kode_item');
    return $query_result;
}

我試過這個這個 ,但還是不能解決我的問題。

順便說一句,對不起,如果您有不熟悉的單詞。 謝謝

嘗試這個

public function index(){
    // load data barang yg akan ditampilkan
    $data['result']=$this->admin_model->get_data_table()->result_array();

    // load view
    $this->load->view('dashboard_admin',$data);
}

試試這個:: //控制器

  public function index(){

        $data['result']=$this->admin_model->get_data_table()->result_array();


        $this->load->view('dashboard_admin',$data);
    }

//查看

<?php
 if(!empty(result)) {
 foreach($result as $data_barang):?>
 <tr>
  <td><?php echo $data_barang->barang.kode_item;?></td>
  <td><?php echo $data_barang->nama_item;?></td>
  <td><?php echo $data_barang->nama_ruang;?></td>
  <td><?php echo $data_barang->jml_item_kondisi;?></td>
  <td><?php echo $data_barang->kondisi;?></td>
 </tr>
<?php

 endforeach;
} else { ?>
<tr>
  <td colspan="5">Some message here</td>
 </tr>

控制器出現問題

您將數據存儲在$ data ['result']變量中,但沒有傳遞給View $ data變量,因此在控制器中像這樣在控制器中傳遞$ data變量

public function index(){
// load data barang yg akan ditampilkan
$data['result']=$this->admin_model->get_data_table()->result_array();

// load view
$this->load->view('dashboard_admin',$data);
}

這項工作很好

將您的模型更改為此

function get_data_table(){
    $query_result = $this->db->query('SELECT barang.kode_item, nama_item, nama_ruang, jml_item_kondisi, kondisi 
        FROM barang 
        INNER JOIN info_barang ON barang.kode_item = info_barang.kode_item 
        INNER JOIN (
            SELECT ruang.nama_ruang, campur_table.kode_item 
            FROM ruang 
            INNER JOIN rekap_isi_ruang AS campur_table ON campur_table.nomor_ruang = ruang.nomor_ruang) AS barang_campur 
        ON barang.kode_item = barang_campur.kode_item')->result();
    return $query_result;
}

如果要使用數組,請使用result_array()而不是query()-> result();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM