2013-03-21 125 views
0

我收到此错误:笨 - 未定义的变量

一个PHP错误遇到

严重性:注意

消息:未定义的变量:结果

文件名:意见/ 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> 

我不明白,因为我已经叫变量“结果”在我的控制器然而,这是不是在工作视图。预先感谢您的帮助。

+0

因为你的模型不返回任何data..try的print_r($查询 - > result_array( ))在你的模型..它显示任何数据 – 2013-03-22 05:54:14

回答

0

尝试不将查询结果作为数组返回,直到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>