【问题标题】:how to fetch the current user data in phpfox如何在phpfox中获取当前用户数据
【发布时间】:2014-04-05 07:26:39
【问题描述】:

主题:从数据库中获取当前用户(某些特定字段)数据并将其显示在欢迎屏幕上。

用户界面说明:在注册页面上,会出现一个下拉菜单。当用户选择一个选项时,它会触发一个事件来获取用户图像以显示在欢迎页面上。

我已将以下代码放入 (pages.process) 模块中

  function getUserId($iUserId)
        {
        $aRows = $this->database()->select('p.image_path')->from($this->_sTable, 'p')
->Join(Phpfox::getT('user') , 'u', ' p.page_id = u.college_name') -> 
        where('u.college_name = p.page_id AND u.user_id = ' . 
    (int)$iUserId)->execute('getRows');
            return $aRows;
            }

数据将从用户和页面表中选择,并将用于显示用户图像。请提出建议。

【问题讨论】:

    标签: javascript jquery phpfox


    【解决方案1】:

    有一个服务可以通过is获取用户详细信息

    $user_id = Phpfox::getUserId();
    $aRow  = Phpfox::getService('user')->getUser($user_id);
    

    这将为您提供用户详细信息

    【讨论】:

      【解决方案2】:

      为了提高性能,请检查您正在更改的页面是否已经具有您需要的信息,如果页面在创建时已经具有该信息并且您可以将其存储在 javascript 中,那么您可能不需要在 ajax 中查询数据库。

      既然您提到了 ajax 情况(触发下拉事件以查询数据库),那么您需要包含一个 JS 文件(我的建议是因为您可以从插件中执行此操作),还有其他方法,但这是我认为最好的。 如果您在编写插件方面需要帮助,请阅读my article 关于插件。我的建议是编写一个插件来将您的 JS 文件包含在页面中。

      在 JS 文件中你可以像这样调用“控制器函数”:

      $.ajaxCall('mymodule.myfunction', 'param1=value1&param2=value2');
      

      这将运行文件 /module/mymodule/include/component/ajax/ajax.class.php 中的函数“myfunction” 从此 ajax 文件中,您可以调用“服务函数”并将代码发送到浏览器,例如:

      $value = Phpfox::getService('mmodule')->someOtherFunction();
      $this->call('alert("' . $value . '");');
      

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-06-10
        • 2019-10-22
        • 1970-01-01
        • 2020-02-21
        • 2021-06-16
        • 1970-01-01
        • 2021-03-05
        • 2021-07-18
        相关资源
        最近更新 更多