0

我收到此错误:

遇到 PHP 错误

严重性:通知

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

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

我不明白,因为我在控制器中调用了变量“结果”,但它在视图中不起作用。提前感谢您的帮助。

4

1 回答 1

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>
于 2013-03-22T02:42:11.453 回答