在activeCollab中获取登录的用户ID

时间:2013-01-10 14:27:35

标签: php activecollab

我需要在我的自定义php脚本中访问用户ID,该脚本位于activecollab的公共文件夹中。

我不在控制器,模型或视图中。我不在框架内,否则我可以应用此解决方案:fetching logged in user data in activecollab by $this->logged_user

感谢。

1 个答案:

答案 0 :(得分:1)

如果您没有构建module(这是扩展系统的推荐方法),那么您可以采取的最佳方法是:

  1. 读取存储在cookie中的activeCollab会话ID(仅限HTTP,不适用于JavaScript)。变量名称因系统而异,所有变量都以ac_activeCollab_sid_#UNIQUE-VALUE#开头,因此您应该检查已登录系统的存储值,以查看应该查看的确切变量。
  2. 从cookie获取会话密钥后,使用该密钥查询acx_user_sessions表以查看会话是否存在以及登录的是谁。密钥格式为:#USER-ID#/#SESSION-ID#/#TIMESTAMP#因此将值展开以获取位你需要的。
  3. 请注意,我们不建议您对数据库中的数据进行外部转换。阅读它,但不要写任何东西 - 将它留给activeCollab或实现所需的功能作为模块(上面提供的链接)。