您好我试图在我的视图中放置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;
}
我已尝试Ideone Demo和this,但仍无法解决我的问题。
顺便说一下,如果有任何看起来不熟悉的单词,我很抱歉。感谢
答案 0 :(得分:2)
试试这个
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);
}
答案 1 :(得分:1)
试试这个:: //控制器
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>
答案 2 :(得分:1)
控制器中的问题
您将数据存储在$ data [&#39;结果&#39;]变量中,但不传递给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);
}
这项工作很好
答案 3 :(得分:1)
将您的模型更改为此
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() - &gt; result();