CodeIgniter Forums
Cannot Call Method of Default Controller - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Archived Discussions (https://forum.codeigniter.com/forum-20.html)
+--- Forum: Archived Development & Programming (https://forum.codeigniter.com/forum-23.html)
+--- Thread: Cannot Call Method of Default Controller (/thread-56727.html)



Cannot Call Method of Default Controller - El Forum - 01-15-2013

[eluser]Unknown[/eluser]
I know that there is familiar problem like my
http://ellislab.com/forums/viewthread/177251

But, please read it.

I have default controller:
Code:
<?php

class Main extends CI_Controller {


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

}

public function index()
{

  $head['title'] = $this->config->item('title');
  $head['base'] = $this->config->item('base_url');
  $head['css'] = $this->config->item('css');
  $head['ga'] = $this->config->item('ga');

  $header['left_title'] = 'left_title';
  $header['right_menu'] = 'right_menu';

  $data['head'] = $this->load->view('head',$head);
  $data['header'] = $this->load->view('header',$header);
  $data['body'] = $this->load->view('home');

  $this->load->view('main',$data);
}

public function login()
{
   // same as the index()
}

}


?>

My base url is "http://localhost/sch/". I can call the default controller by clicking this url base "http://localhost/sch/". My application/config/routes.php:

Code:
$route['default_controller'] = "main";
$route['404_override'] = '';

$route['login'] = "index.php/main/login";

But i can't call the method login() of default controller by clicking this "http://localhost/sch/login" !

And my index page:
Code:
$config['index_page'] = 'index.php';



Cannot Call Method of Default Controller - El Forum - 01-15-2013

[eluser]PhilTem[/eluser]
You should not have 'index.php' in the route. The route is completely independent of using or not using 'index.php' as your index_page.
So remove it and try it again.


Cannot Call Method of Default Controller - El Forum - 01-15-2013

[eluser]Unknown[/eluser]
I've changed route to:
Code:
$route['login'] = "main/login";

But probles still exist Sad


Cannot Call Method of Default Controller - El Forum - 01-15-2013

[eluser]Otemu[/eluser]
Remove $route['login'] = "main/login";
Test like this http://localhost/index.php/sch/login

Once you know that is working, your need to remove the index.php file by using .htaccess
Here is a guide


Cannot Call Method of Default Controller - El Forum - 01-15-2013

[eluser]rana[/eluser]
Are you using .htaccess?