简体   繁体   中英

Error Class Controller not found in CodeIgniter

Hello, I am getting Controller not found error in CodeIgniter. This is my Controller code

<?php

class HelloWorld extends Controller
{

    function HelloWorld()
    {
        parent::Controller();
    }

    function index()
    {
        $this->load->view('index_view');
    }

    function hello()
    {
        $this->load->view('hello_view');
    }

}
?>

This is the view code:

Hello, Nice to see you!

I have this error when it executes:

Fatal error: Class 'Controller' not found in D:\\wamp\\www\\CodeIgniter_2.0.2\\application\\controllers\\helloworld.php on line 2

Can anyone tell me why I get this error?

As of CodeIgniter 2.x CI_ prefix is added to all core classes. Check the Change Log .

Added CI_ Prefix to all core classes.

For CodeIgniter 2.x

<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class HelloWorld extends CI_Controller
{

    function __construct()
    {
        parent::__construct();
    }

    function index()
    {
        $this->load->view('index_view');
    }

    function hello()
    {
        $this->load->view('hello_view');
    }

}

For CodeIgniter 1.x

<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class HelloWorld extends Controller
{

    function HelloWorld()
    {
        parent::Controller();
    }

    function index()
    {
        $this->load->view('index_view');
    }

    function hello()
    {
        $this->load->view('hello_view');
    }

}

Hope this helps you. Thanks!!

Make sure your controller extends the parent controller class and also check your file name .

<?
     class Helloworld extends CI_Controller {

            function index()
            {
                   $this->load->view('index_view');    
            }

                function hello(){
                $this->load->view('hello_view'); 
                }

        }
        ?>

i faced the same problem as you, and i solved it as simple as possible just by replacing the word Controller in the line of extending parent class by CI_Controller and it's work probably and here is the solution in your code

<?php

class HelloWorld extends CI_Controller{

   function HelloWorld() {
    parent::Controller();
   }

  function index() {
    $this->load->view('index_view');
  }

  function hello() {
    $this->load->view('hello_view');
  }

}
?>

and your code will execute

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM