`
anysky131
  • 浏览: 172042 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

有关ecmall的东东3----登录用户信息$this->visitor->get("user_id")的实现

    博客分类:
  • PHP
PHP 
阅读更多

在ecpp.base.php中定义了一个BaseVisitor extends Object 类,它对session中的当前登录的用户信息进行判断与初使化,我们先看看它的构造器:

function BaseVisitor()
    {
        if ($_SESSION[$this->_info_key]['user_id'])
        {
            $this->info         = $_SESSION[$this->_info_key];
            $this->has_login    = true;
        }
        else
        {
            $this->info         = array(
                'user_id'   => 0,
                'user_name' => Lang::get('guest')
            );
            $this->has_login    = false;
        }
    }

 

它在构造器中就对$_SESSION中进行_info_key的判断,判断是否存在,存在则用户已经登录,不存在,则用户还没有登录
 而这里的_info_key,则是在它的子类:UserVisitor extends BaseVisitor中进行附值的:

class UserVisitor extends BaseVisitor
{
    var $_info_key = 'user_info';
}

 

这个子类,在FrontendApp extends ECBaseApp类中的:

function _init_visitor()
    {
        $this->visitor =& env('visitor', new UserVisitor());
    }

 

中对visitor进行初使化的。因此这就可以让我们在FrontendApp的子类中使用$this->visitor->get("user_id")就可以获取当前登录用户的信息,而根据ecmall的继承图中我们可以知道,基本在所有的实体对象操作类中都可以使用它对当前登录用户进行访问!而在BaseVisitor类中,集合了更多的函数可以对用户是否登录,获取当前用户信息等内容进行操作。
 而对于系统后台的用户操作,与前台是一样的,只不过后台是:admin/app/backend.base.php中的BackendApp类

分享到:
评论
1 楼 tigarlion 2009-09-04  
期待4.5,6

相关推荐

    ecmall插件

    $data = $this->_datacall_mod->getOne($id); if (empty($data)) { return; } $this->name_length = $data['name_length']; $this->_expires = time() + $data['cache_time']; $this->charset = in_array($...

    ECMall 繁体UFT-8 v2.3.0 正式版

    ECMall是一个根据融合了电子商务以及网络社区特色的产品,它不仅能使您的电子商务进程变得异常轻松,同时通过和康盛创想相关产品的结合还能进一步提高用户的活跃度以及黏性,从而促进用户的忠诚度。 ECMall 2.3.0 ...

    ecmall230-0918-scgbk 官方版

    ecmall230-0918-scgbk 官方版,如今官方已经停止ecmall程序下载,据了解,以后也不会开发免费下载了。

    ecmall230-0918-scgbk.zip

    ecmall230-0918-scgbk.zip

    ecmall230-0918-scutf8 代码

    ecmall230-0918-scutf8 代码

    ecmall_2.0_store_guide

    Ecmall使用手册站长Ecmall使用手册站长Ecmall使用手册站长Ecmall使用手册站长

    ECMall 2.3.0 繁体utf-8.zip

    ECMall是一个根据融合了电子商务以及网络社区特色的产品,它不仅能使您的电子商务进程变得异常轻松,同时通过和康盛创想相关产品的结合还能进一步提高用户的活跃度以及黏性,从而促进用户的忠诚度。 ECMall 2.3.0...

    ecmall手机版_ecmallwap_ecmallapp

    ecmall手机版_ecmallwap_ecmallapp

    ecmall_v2.2_数据字典

    ecmall_v2.2_数据字典,ecmall所有的表结构及字段说明

    ECMall模板-flymak

    ECMall模板 flymak模版,解压后直接放在服务器上打开

    ecmall模板-qqmall

    ecmall模板 qqmall 拍拍模板

    ecmall兼容PHP5.3-PHP7.0

    ecmall电子商城源代码兼容PHP5.3-PHP7.0,由于ecmall开源代码官网已经不更新升级了,PHP5.5以上就会报错,现在做了一个兼容源代码的调整,测试了PHP5.3.29,PHP5.6.27,PHP7.0.12这三个版本可以兼容,下载资源里面附加文档...

    ECmall源码简略分析

    ECmall源码简略分析----数据库关系模型的实现

    ecmall-utf8

    ECMall是一个根据融合了电子商务以及网络社区特色的产品,它不仅能使您的电子商务进程变得异常轻松,同时通过和康盛创想相关产品的结合还能进一步提高用户的活跃度以及黏性,从而促进用户的忠诚度。

    ECMall v2.3.0 简体UTF-8 正式版

    ECMall v2.3.0 简体UTF-8 正式版 官方需要密码,为新手提供方便。

    商业源码-编程源码-ECMall v2.2.1 简体utf-8.zip

    商业源码-编程源码-ECMall v2.2.1 简体utf-8.zip

    商业源码-编程源码-ECMall v2.2.1 繁体utf-8.zip

    商业源码-编程源码-ECMall v2.2.1 繁体utf-8.zip

    Ecmall_MySql_数据库调用教程

    ecmall 二次开发 关于相关文档将在

    ecmall短信插件.rar

    下载ECMALL插件后解压相应目录中,打开ECMALL系统管理后台-》网站-》短信管理,填写你的短信配置信息并提交。

    ECMall 2.3.0 简体gbk.zip

    ECMall是一个根据融合了电子商务以及网络社区特色的产品,它不仅能使您的电子商务进程变得异常轻松,同时通过和康盛创想相关产品的结合还能进一步提高用户的活跃度以及黏性,从而促进用户的忠诚度。 ECMall 2.3.0...

Global site tag (gtag.js) - Google Analytics