MY_Controller重定向Codeigniter

时间:2014-08-31 14:37:37

标签: php codeigniter

我使用codeigniter。我试图在MY_Controller.php中设置重定向为true或false

安装过程完成后,我应该让我可以访问前端和后端。

但现在当我转到管理网址时,它会将我发回安装网址,即使安装了网址,我该如何修复我的问题。我希望在安装后能够访问管理员和前端。

所有控制器扩展我的控制器。

<?php

class MY_Controller extends MX_Controller {

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

        if($this->config->item('installed') !== FALSE) {
            redirect('install');    
        } else {
            return TRUE;
        }

    }
}

的config.php

/*
|--------------------------------------------------------------------------
| Install Wizard Setup
|--------------------------------------------------------------------------
|
| This checks if you have set gone through install process
| else get redirected. This corresponds with MY_Controller.php
| All Controllers Extend Class Now Renamed MY_Controller from
| MX_Controller 
| FALSE REDIRECTS TO INSTALL, TRUE HAS ACCESS TO MAIN SITE
|
*/
$config['installed'] = TRUE;

2 个答案:

答案 0 :(得分:1)

我猜如果它的TRUE表示已安装,那么你需要检查这个条件

if($this->config->item('installed') !== FALSE)

这应该是这样的

if($this->config->item('installed') == FALSE)

如果有任何问题,请随时告诉我。

答案 1 :(得分:0)

我认为我发现了一个更好的选择,它是作为路线进行重定向。现在工作得很好,而不是在MY_Controller中。

这是在config / route.php

if (!$this->config->item('installed')) {

    $route['default_controller'] = "install/step_1/index";
    $route['404_override'] = '';

} else {

    $route['default_controller'] = "catalog/common/home/index";
    $route['404_override'] = '';

}