加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 强制CodeIgniter发送视图并停止工作

发布时间:2020-12-13 21:48:28 所属栏目:PHP教程 来源:网络整理
导读:您好我正在使用继承的控制器.这些是我的控制器: -baseAdminController: ?phpif (!defined('BASEPATH')) exit('No direct script access allowed');class _BaseAdminController extends CI_Controller { public function __construct() { parent::__constru
您好我正在使用继承的控制器.这些是我的控制器:

-baseAdminController:

<?php
if (!defined('BASEPATH'))
    exit('No direct script access allowed');
class _BaseAdminController extends CI_Controller {
    public function __construct() {
        parent::__construct();
        $this->load->library('session');

        $calledFunction= $this->router->fetch_method();
        if ($calledFunction!= 'loginView' && $calledFunction!= 'doLogin') {
            $this->checkSession();
        }
    }

    public function checkSession() {

        if ($this->session->userdata('loggedIn') == false) {
            $this->load->view('admin/loginView');
        }
    }
}

我的派生管理控制器:
????

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

class AdminController extends _BaseAdminController {

    public function indexView() {
        $this->load->view('admin/indexView');
    }
}

当我想登录时,CodeIgniter向我展示了admin / loginView和admin / indexView.因为我在构建我的派生控制器时检查会话状态.如何防止加载第二个视图?

预先感谢..

解决方法

要回答您的问题,您可以在checkSession方法中完成以下操作:

public function checkSession() {

    if ($this->session->userdata('loggedIn') == false) {
        echo $this->load->view('admin/loginView',array(),TRUE);
        exit;
    }
}

说明:如果将第三个参数传递为TRUE,则它将返回该文件的内容.阅读ellislab.com以获取更多信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读