我得到这个错误:
遇到PHP错误
严重性:注意
消息:Undefined variable: results
文件名:视图/body.php
行号:75
我的模型function get_results($search_term='default')
{
$this->db->select('*');
$this->db->from('books');
$this->db->like('title', $search_term);
$query = $this->db->get();
return $query->result_array();
}
我的控制器
function execute_search(){
$this->load->model('books_model');
$search_term = $this->input->post('search');
$data['results'] = $this->books_model->get_results($search_term);
$this->load->view('body', $data);
}
我的观点
<h1>Search Results</h1>
<div>
<?php
if(is_array($results)) : foreach ($results as $val) : ?>
<ul>
<li><?php echo $val['title'] ?></li>
</ul>
<?php endforeach; ?>
<?php else : ?>
<h2> No books found </h2>
<?php endif; ?>
</div>
我不明白,因为我在控制器中调用了变量"结果",但它在视图中不起作用。谢谢你的帮助。
在for循环之前尽量不将查询结果作为数组返回。
你的模型:
function get_results($search_term='default')
{
$this->db->select('*');
$this->db->from('books');
$this->db->like('title', $search_term);
$query = $this->db->get();
return $query;
}
你的控制器没有变化
视图<h1>Search Results</h1>
<div>
<?php
foreach ($results->result_array() as $val) : ?>
<ul>
<li><?php echo $val['title'] ?></li>
</ul>
<?php endforeach; ?>
<?php else : ?>
<h2> No books found </h2>
<?php endif; ?>
</div>