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 相关文章推荐
PHP实现网上点歌(二)
Oct 09 PHP
discuz7 phpMysql操作类
Jun 21 PHP
php存储过程调用实例代码
Feb 03 PHP
JoshChen_web格式编码UTF8-无BOM的小细节分析
Aug 16 PHP
用PHP和Shell写Hadoop的MapReduce程序
Apr 15 PHP
php类的扩展和继承用法实例
Jun 20 PHP
浅谈php提交form表单
Jul 01 PHP
WordPress中调试缩略图的相关PHP函数使用解析
Jan 07 PHP
PHP的Yii框架中移除组件所绑定的行为的方法
Mar 18 PHP
PHP获取网站中各文章的第一张图片的代码示例
May 20 PHP
PHP实现获取url地址中顶级域名的方法示例
Jun 05 PHP
PHP 计算至少是其他数字两倍的最大数的实现代码
May 26 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
php5编程中的异常处理详细方法介绍
2008/07/29 PHP
session在PHP大型web应用中的使用
2011/06/25 PHP
深入PHP curl参数的详解
2013/06/17 PHP
php根据日期判断星座的函数分享
2014/02/13 PHP
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
2017/03/31 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
实例分析PHP将字符串转换成数字的方法
2019/01/27 PHP
任意位置显示html菜单
2007/02/01 Javascript
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
JSChart轻量级图形报表工具(内置函数中文参考)
2010/10/11 Javascript
在JavaScript并非所有的一切都是对象
2013/04/11 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
JS Replace 全部替换字符的用法小结
2013/12/24 Javascript
一个支持任意尺寸的图片上下左右滑动效果
2014/08/24 Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
2016/07/14 Javascript
jQuery插件EasyUI获取当前Tab中iframe窗体对象的方法
2016/08/05 Javascript
自制微信公众号一键排版工具
2016/09/22 Javascript
详解Nodejs get获取远程服务器接口数据
2019/03/26 NodeJs
JS实现页面鼠标点击出现图片特效
2020/08/19 Javascript
Python实现获取域名所用服务器的真实IP
2015/10/25 Python
使用Python读取二进制文件的实例讲解
2018/07/09 Python
pandas数据集的端到端处理
2019/02/18 Python
Python笔记之代理模式
2019/11/20 Python
Python CSS选择器爬取京东网商品信息过程解析
2020/06/01 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
HTML5 input placeholder 颜色修改示例
2014/05/30 HTML / CSS
AmazeUI 平滑滚动效果的示例代码
2020/08/20 HTML / CSS
what is the difference between ext2 and ext3
2015/08/25 面试题
受欢迎的大学生自我评价
2013/12/05 职场文书
部队学习十八大感言
2014/01/11 职场文书
英语自我评价范文
2014/01/24 职场文书
高中生期末评语大全
2014/01/28 职场文书
唐山大地震观后感
2015/06/05 职场文书
值班管理制度范本
2015/08/06 职场文书
nginx静态资源的服务器配置方法
2022/07/07 Servers