我想将数据从模型传递到控制器然后再查看 这段代码解释了它。
模型
public function get_all_college_name() {
$q = $this -> db -> query('select * from college');
if ($q -> num_rows() > 0) {
foreach ($q->result() as $row) {
$data[] = $row;
}
return $data;
}
}
控制器代码
public function index() {
$this -> load -> model('retriver_data');
$data['rows'] = $this -> retriver_data -> get_all_college_name();
$this -> load -> view('home', $data);
//$this -> view_something('home', $data);
}
视图代码
<body>
<?php
foreach ($rows as $r) {
echo $r -> name;
}
?>
</body>
出现错误
遇到PHP错误
严重性:警告
消息:为foreach()提供的参数无效
文件名:views / home.php
行号:8
答案 0 :(得分:0)
对于CI,在我的模型中我通常使用:
if ($query->num_rows() == 0)
return FALSE;
return $query->result_array();
然后如果您的视图在显示之前检查数组是否为假
<body>
<?php if ( ! $rows) : ?>
no data
<?php else: ?>
<?php foreach ($rows as $row): ?>
<?php print $row->name; ?>
<?php endforeach;?>
<?php endif; ?>
</body>