2011-10-06 195 views
0

在下面的代码中,我有错误,如何解决?提供的参数无效

我在表中的数据是:

enter image description here

是CI_Controller:

$update = array('15'); // this is a example from my $_POST that are array. 
    if (is_array($update) && count($update) > 0) { 
     foreach($update as $val){ 
      $data['query_hi'] = $this->db->get_where('hotel_image', array('relation' => $val))->row(); 
     } 
     $this -> load -> view('admin/residence_update', $data); 
    } 

查看:

     foreach($query_hi->images as $val){ 
          echo $val; 
         } 

错误:

A PHP Error was encountered

Severity: Warning

Message: Invalid argument supplied for foreach()

Filename: core/Loader.php(679) : eval()'d code

Line Number: 279

+0

在加载视图并将输出添加到您的问题之前,执行'var_dump($ data ['query_hi']);''。 – hakre

回答

1

的问题是,它仅返回一个结果为您查询......和阵列在每个循环覆盖。试试这个:

$update = array('15'); // this is a example from my $_POST that are array. 
if (is_array($update) && count($update) > 0) { 
    $data= array(); 
    foreach($update as $val){ 
     $tmp= $this->db->get_where('hotel_image', array('relation' => $val)); 
     foreach($tmp->result() as $row){ 
      $data['query_hi'][] = $row; 
     } 
    } 
    $this -> load -> view('admin/residence_update', $data); 
} 
0

也许你应该尝试:

for($i=0;$i<count($query_hi);$i++) 
{ 
    echo $query_hi[$i]->images; 
}