首页 > 技术文章 > mvc session验证

liangdong 2019-02-26 09:31 原文

不只首页需要验证,每个页面都需要验证,每个页面都加session会比较麻烦,需要用到平台控制器

<?php
//平台控制器
class PlatformController extends Controller{     //继承基础控制器
    function __construct(){
        parent::__construct();
        //登录验证
        $this->_checkLogin();
    }
    //判断是否登录
    function _checkLogin(){
        session_start();
        $no_list =array(
        'Admin' => array('login','check','getCaptcha')    //将不需要验证的动作摘出来
        );
        if(isset($no_list[CONTROLLER]) && in_array(ACTION, $no_list[CONTROLLER])){
            return;
        }
        if($_SESSION['is_login'] != 'yes'){
            $this->_jump('new_file.php?p=back&c=Admin&a=login');     //如果登录标志不等于yes则跳回登录页
        }
    }
}

实例化后台控制器对象,调用构造方法,session_start();可以放到上面

其他控制器集成平台控制器,当你new一个对象的时候,他会自动调用父类的构造方法

 

推荐阅读