视图控制器不工作代码点火器


controller for view not working codeigniter

我有两个视图,即views/pages/home.phpviews/pages/search_result.php。我有一个控制器来加载这个视图,即controllers/Pages.php。此外,我在视图中还有一个文件夹,即views/templates/header.phpviews/templates/footer.php

当我把浏览器指向http://localhost/codeigniter/home时,一切都很完美。

但问题是,当我将浏览器指向http://localhost/codeigniter/search_result时,视图footer.php也会显示出来。事实上,search_result.php 内部没有任何信息

我的控制器代码是

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Pages extends CI_Controller {
    public function home($page = 'home')
    {
        //code to show home.php (http://localhost/codeigniter/home)
        if (!file_exists(APPPATH.'/views/pages/'.$page.'.php'))
        {
            // Whoops, we don't have a page for that!
            show_404();
        }
       else
       {
            $data['title'] = ucfirst($page); // Capitalize the first letter
            $this->load->view('templates/header', $data);
            $this->load->view('pages/'.$page, $data);
            $this->load->view('templates/footer', $data);
       }
    }
    public function search_result($page = 'search_result') {
        //code to show search_result.php (http://localhost/codeigniter/search_result)
    }
}

search_result函数中,我没有给出任何代码,当我指向http://localhost/codeigniter/search_result时,函数home的页脚显示即$this->load->view('templates/footer', $data);

我做错了什么。有解决这个问题的办法吗。我是代码点火器的初学者。

只需尝试此

public function home()
{
    //code to show home.php (http://localhost/codeigniter/home)
    if (!file_exists(APPPATH.'/views/pages/home.php'))
    {
        // Whoops, we don't have a page for that!
        show_404();
    }
   else
   {
        $this->load->view('templates/header', $data);
        $this->load->view('pages/Home', $data); # changed 
        $this->load->view('templates/footer', $data);
   }
}