Php 为foreach()提供的参数无效
我收到错误消息: 在我的视图中,foreach()的参数无效 我想显示但获取错误为Php 为foreach()提供的参数无效,php,codeigniter,foreach,Php,Codeigniter,Foreach,我收到错误消息: 在我的视图中,foreach()的参数无效 我想显示但获取错误为foreach()提供的无效参数。我是Codeigniter的新手,不知道如何解决这个问题 型号 function get_berita($WHERE=array()) { $this->db->select('id_berita,judul_berita,content,tanggal'); $this->db->where($WHERE); $this->d
foreach()
提供的无效参数。我是Codeigniter的新手,不知道如何解决这个问题
型号
function get_berita($WHERE=array())
{
$this->db->select('id_berita,judul_berita,content,tanggal');
$this->db->where($WHERE);
$this->db->order_by('id_berita','asc');
$query = $this->db->get('berita_ukm');
return $query -> result_array();
}
控制器
function index()
{
$this->data['berita'] = $this->mberita->get_berita();
$this->data['title'] ='UKM Taekwondo | berita';
$this->data['orang'] = $this->mlogin->dataPengguna($this->session->userdata('username'));
$this->data['contents'] = $this->load->view('admin/berita/view_berita', '', true);
$this->load->view('template/wrapper/admin/wrapper_ukm',$this->data);
}
查看
<tbody>
<?php
$no=1;
foreach ($berita as $dt) {
echo "
<tr>
<td>$dt[id_berita]</td>
<td>$dt[tanggal]</td>
<td>$dt[judul_berita]</td>
<td>$dt[content]</td>
<td><a class='ui tiny blue edit button' href='".base_url()."index.php/admin/berita/edit/$dt[id_berita]'><i class='edit icon'></i></a>
<a class='ui tiny blue edit button' href='".base_url()."index.php/admin/berita/delete/$dt[id_berita]'><i class='trash icon'></i></a></td>
</tr>
";
$no++;
}
?>
</tbody>
请帮我做什么。谢谢。您的模型返回了一个空集,但foreach需要一个数组才能工作。。 通过在foreach之前嵌入if条件,可以忽略此错误
if($berita){
foreach ($berita as $dt) {
echo "<tr>
<td>$dt[id_berita]</td>
<td>$dt[tanggal]</td>
<td>$dt[judul_berita]</td>
<td>$dt[content]</td>
<td><a class='ui tiny blue edit button' href='".base_url()."index.php/admin/berita/edit/$dt[id_berita]'><i class='edit icon'></i></a>
<a class='ui tiny blue edit button' href='".base_url()."index.php/admin/berita/delete/$dt[id_berita]'><i class='trash icon'></i></a></td>
</tr>";
$no++;
}
}
if($berita){
foreach($berita作为$dt){
回声“
$dt[id_berita]
$dt[tanggal]
$dt[朱杜尔贝里塔]
$dt[内容]
";
$no++;
}
}
您的模型不返回任何值。在将数据发布到控制器之前进行检查
在您的型号中
function get_berita($WHERE=array())
{
$this->db->select('id_berita,judul_berita,content,tanggal');
$this->db->where($WHERE);
$this->db->order_by('id_berita','asc');
$query = $this->db->get('berita_ukm');
return $query -> result_array();
}
请显示什么
var_dump($this->mberita->get_berita())代码>提供给您。我尝试了此操作,但结果是数组(0){}。你能告诉我为什么使用数组(0)吗?谢谢这意味着它是一个空数组。这就是为什么你会收到这个错误。foreach需要至少包含一个元素的数组。谢谢,但仍然存在错误未定义变量:berita。如何解决这个错误?感谢您在控制器上修改此行$this->data['contents']=$this->load->view('admin/berita/view\u berita',$this->data,true);我尝试var_dump get_berita,但数组(0){}。怎么办?你的数据库里有数据吗?此外,在控制器中,您还向“get_berita($WHERE)”模型$this->data['berita']=$this->mberita->get_berita(??)”传递了一个空参数;