帝国论坛帝国网站管理系统交流区帝国CMS使用交流[分享]帝国CMS 8.0 JS调用登录状态模板显示会员头像 【本版专题贴子】  
主题:[分享]帝国CMS 8.0 JS调用登录状态模板显示会员头像 [加入收藏夹]   

bbatcms
用户头衔:书生

精华贴   :0
发贴数   :12
经验值   :162
注册时间:2011-05-25
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[分享]帝国CMS 8.0 JS调用登录状态模板显示会员头像
帝国CMS 8.0的头像系统改变了存放方式,头像存放在 /d/file/efupic/ 目录下按ID分层存放,需要用 eMember_UpicReturnUrl() 函数才能取得正确路径。但JS调用登录状态模板不支援直接执行PHP函数,导致无法正确显示头像。

我的解决方法是:
第一步,打开:

/e/member/login/loginjs.php

第二步,找到这行:

@include(ECMS_PATH.'c/ecachetemp/emtemp/esp_loginjs.php');

在它前面加入:

$psAvatar=eMember_UpicReturnUrl($r['userid'],$r['upic']);

第三步,在后台JS调用登录状态模板已登入那段,头像使用:

<img src="<?=$psAvatar?>" alt="头像" />

原理:
loginjs.php 已经查询了会员资料包含 upic 栏位,我们在include缓存模板前先用PHP计算好完整头像URL存入 $psAvatar,模板再直接输出这个变量,绕过了模板不支援PHP函数的限制。

不知道还有其他方法?

[该贴被修改 1 次,最后修改时间 2026-03-05 18:27:46 ]



2026-03-05 18:26:49 已设置保密 顶部 回复 引用 报告 编辑 删除

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1