然之系统模块方法权限的问题
2014-10-31 10:27:03
杜子穆
  • 访问次数: 7
  • 注册日期: 2014-10-31
  • 最后登录: 2014-11-21
  • 我的积分: 100
  • 门派等级: 无门派
想问一下SYS目录下执行的流程。比如说我进首页,然后是去COMMON模块下判断权限,如果已经登录,就进去首页。如果没有登录就去登录和注册页面。我理解的是这样。想问一下具体的执行流程。谢谢。
沙发
2014-10-31 10:37:54
管西迎
  • 访问次数: 353
  • 注册日期: 2014-05-02
  • 最后登录: 2022-04-20
  • 我的积分: 519
  • 门派等级: 无门派
登录时会记录已经有的权限到session,执行操作时会先调用common模块的权限判断,如果没有权限提示返回或者重新登录。
板凳
2014-10-31 10:43:57
杜子穆
  • 访问次数: 7
  • 注册日期: 2014-10-31
  • 最后登录: 2014-11-21
  • 我的积分: 100
  • 门派等级: 无门派

回的太快了吧  我在代码里看到过的你的名字。先谢谢。

#3
2014-10-31 10:58:57
杜子穆
  • 访问次数: 7
  • 注册日期: 2014-10-31
  • 最后登录: 2014-11-21
  • 我的积分: 100
  • 门派等级: 无门派

执行具体的方法比如USER模块下LOGIN方法之前是执行

common 模块里以下方法么?

class commonModel extends model

{
    /**
     * Do some init functions.
     * 
     * @access public
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
        $this->startSession();
        $this->setUser();
        $this->setEntry();
        $this->loadConfigFromDB();
        $this->loadLangFromDB();
    }
common模块的权限判断具体是如何判断的啊 ? 我的理解是先执行 function isOpenMethod($module, $method)判断是否是开放方法。如果是开放方法就可以进入。如果不是 checkPriv检测权限,如果有权限就执行hasPriv方法。如果没有,执行DENY方法。我的理解对么?如果对,为什么这样执行啊,能说说么? 谢谢。
#4
2014-10-31 11:07:27
王春生
  • 访问次数: 940
  • 注册日期: 2014-05-02
  • 最后登录: 2026-01-06
  • 我的积分: 1314
  • 门派等级: 无门派
自己可以写调试代码,跟踪下。
#5
2014-10-31 11:36:41
杜子穆
  • 访问次数: 7
  • 注册日期: 2014-10-31
  • 最后登录: 2014-11-21
  • 我的积分: 100
  • 门派等级: 无门派
老大也出来了啊 ,第一次发帖很荣幸啊。谢谢。
1/1