php后台如何避免用户直接进入方法实例


Posted in PHP onOctober 15, 2013

1)创建BaseController控制器继承Controller(后台的一切操作要继承BaseController):

在BaseController里面添加:

public function checkLogin() {         if (Yii::app()->authority->isLogin() == Yii::app()->authority->getStatus('NOTLOGIN')) { 
            $url = $this->createUrl('user/login'); 
            if (Yii::app()->request->isPostRequest && Yii::app()->request->isAjaxRequest) { 
                echo json_encode(array('code' => -101, 'message' => '用户未登录。', 'callback' => 'window.location="' . $url . '";')); 
            } else if (Yii::app()->request->isAjaxRequest) { 
                echo '<script language="javascript">window.location="' . $url . '";</script>'; 
            } else { 
                $this->redirect($url); 
            } 
            exit; 
        } 
        return true; 
    }

在components目录下创建Authority.php文件:

<?php /** 
 * 权限检查组件 
 */
class Authority extends CComponent { 
    private $NOTLOGIN = -1; 
    private $FAILED = -2; 
    private $PASS = 1; 
    public function init() { 
    } 
    /** 
     * 检查是否登陆 
     * @return boolean  
     */
    function isLogin() { 
        return isset(Yii::app()->session['user']) ? $this->PASS : $this->NOTLOGIN; 
    } 
   
    /** 
     * 获取状态值 
     * @param string $name 
     * @return int  
     */
    public function getStatus($name){ 
        return $this->$name; 
    } 
}
PHP 相关文章推荐
VML绘图板②脚本--VMLgraph.js、XMLtool.js
Oct 09 PHP
PHP 选项及相关信息函数库
Dec 04 PHP
(PHP实现)只使用++运算实现加法,减法,乘法,除法
Jun 27 PHP
PHP+MYSQL会员系统的开发实例教程
Aug 23 PHP
PHP中echo,print_r与var_dump区别分析
Sep 29 PHP
如何使用php实现评委评分器
Jul 31 PHP
yii用户注册表单验证实例
Dec 26 PHP
对于Laravel 5.5核心架构的深入理解
Feb 22 PHP
PHP操作Redis常用技巧总结
Apr 24 PHP
PHP分页显示的方法分析【附PHP通用分页类】
May 10 PHP
php json转换相关知识(小结)
Dec 21 PHP
laravel 修改.htaccess文件 重定向public的解决方法
Oct 12 PHP
php下拉选项的批量操作的实现代码
Oct 14 #PHP
php登陆页的密码处理方式分享
Oct 14 #PHP
PHP设置图片文件上传大小的具体实现方法
Oct 11 #PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
Oct 10 #PHP
php检测网页是否被百度收录的函数代码
Oct 09 #PHP
php MessagePack介绍
Oct 06 #PHP
php 批量替换程序的具体实现代码
Oct 04 #PHP
You might like
几个学习PHP的网址
2006/11/25 PHP
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
php eval函数用法 PHP中eval()函数小技巧
2012/10/31 PHP
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
Javascript在IE和FireFox中的不同表现简析
2012/12/03 Javascript
JQuery入门—编写一个简单的JQuery应用案例
2013/01/03 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
小结Node.js中非阻塞IO和事件循环
2014/09/18 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
bootstrap table 服务器端分页例子分享
2015/02/10 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
2015/06/10 Javascript
JavaScript中数组的22种方法必学(推荐)
2016/07/20 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
js实现瀑布流效果(自动生成新的内容)
2017/03/16 Javascript
javascript面向对象三大特征之封装实例详解
2019/07/24 Javascript
Vue 数据绑定的原理分析
2020/11/16 Javascript
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
[01:13]2015国际邀请赛线下观战现场
2015/08/08 DOTA
Python的函数嵌套的使用方法
2014/01/24 Python
Python实现partial改变方法默认参数
2014/08/18 Python
简述Python中的面向对象编程的概念
2015/04/27 Python
使用tensorflow实现线性回归
2018/09/08 Python
Python爬虫将爬取的图片写入world文档的方法
2018/11/07 Python
对python 自定义协议的方法详解
2019/02/13 Python
使用python进行波形及频谱绘制的方法
2019/06/17 Python
Python中的 is 和 == 以及字符串驻留机制详解
2019/06/28 Python
pytorch 批次遍历数据集打印数据的例子
2019/12/30 Python
python如何爬取动态网站
2020/09/09 Python
详解Python中第三方库Faker
2020/09/25 Python
Python创建文件夹与文件的快捷方法
2020/12/08 Python
贷款委托书范本
2014/04/08 职场文书
社区工作者个人总结
2015/02/28 职场文书
研究生简历自我评
2015/03/11 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
Windows安装Anaconda3的方法及使用过程详解
2021/06/11 Python
Redis分布式锁Redlock的实现
2021/08/07 Redis