php 禁止访问控制器,php – 当在代码标识符中未设置会话时,无法访问控制器中的某些方法...

检查这可能会帮助你

class MY_controller extends CI_controller{

function __construct() {

parent::__construct();

}

function _required_user($params =array()){

$action =$this->router->fetch_method();

if(empty($params['except']))

$params['except'] =array();

if(empty($params['only']))

$params['only'] =array();

if(count($params['except']) > 0 && in_array($action,$params['except']))

return true;

if(count($params['only']) > 0 && in_array($action,$params['only']) && $this->session->userdata('is_login'))

return true;

if($this->session->userdata('is_login'))

return true;

redirect('login');

}

}

class dashboard extends MY_Controller {

function __construct() {

parent::__construct();

$this->load->library('session');

$this->load->model('dbmodel');

$this->load->helper('url','form');

$this->_required_user(array('except'=>array('index')))

}

function add(){

/*

Session required

*/

}

function edit(){

/*

Session required

*/

}

function index(){

/*

no session required

*/

}

}

class content extends MY_Controller{

function __construct() {

parent::__construct();

$this->load->library('session');

$this->load->model('dbmodel');

$this->load->helper('url','form');

$this->_required_user(array('only'=>array('index')))

}

function add(){

/*

no Session required

*/

}

function edit(){

/*

no Session required

*/

}

function index(){

/*

session required

*/

}

}

class Myaccount extends MY_Controller{

function __construct() {

parent::__construct();

/*

for all functions session required

*/

$this->_required_user()

}

function edit(){

/*

session required

*/

}

function save(){

/*

session required

*/

}

}

>只有param:只有给定的函数/函数存在检查会话

>除了param:不要检查给定功能/功能的会话

>无参数:检查控制器中的所有功能和重定向的会话

您可以根据需要修改_reuired_user功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值