discuz获取用户已加入圈子和群主信息
discuz的群组功能是一个强大的扩展功能,用户可以创建自己的圈子,建立兴趣小组,扩展人脉的同时聚合人气,开展自己的业务。为此我在个人空间页加入了圈子信息的相关功能。
一是获取已加入的圈子数据
<!--{if $groupcount}-->
<div class="box box10 f_c" >
<img src="$_G['style']['tpldir']/pic/maimai/q12.png" class="list" alt="">
<div>
<span class="kmall" >
<!--{if $usergrouplist}-->
<!--{loop $usergrouplist $key $value}-->
<a href="forum.php?mod=group&fid={$value['fid']}" target="_blank">{$value['name']}</a>
<!--{/loop}-->
<!--{else}-->
<span>暂未加入圈子</span>
<!--{/if}-->
</span>
<p><a href="group.php?hot=yes">热门圈子</a></p>
</div>
<img src="$_G['style']['tpldir']/pic/maimai/q3.png" class="right" alt="">
</div>
<!--{/if}-->
以上代码为模板自带的函数变量调用,这个很简单。
第二查询判断当前受访空间的用户是否为某个圈子的群主
<!--{if $groupcount}-->
<!--{eval $owner_icon_displayed = false;}--><!-- 初始化标志变量 -->
<!--{loop $usergrouplist $key $value}-->
<!-- 判断是否为群主/管理员 -->
{eval
// 查询forum_forumfield表,检查founderuid是否等于当前用户UID
$is_owner = DB::result_first("SELECT COUNT(*) FROM ".DB::table('forum_forumfield')." WHERE fid='$value' AND founderuid='$space'");
// 查询forum_moderator表,检查用户是否为管理员
$is_moderator = DB::result_first("SELECT COUNT(*) FROM ".DB::table('forum_moderator')." WHERE fid='$value' AND uid='$space'");
}
<!--{if ($is_owner || $is_moderator) && !$owner_icon_displayed}-->
<!--{eval $owner_icon_displayed = true;}--><!-- 设置标志变量,防止重复显示 -->
<img src="https://www.fllt.cn/maimai/img/qq/qunz.png" style="height: 12px; vertical-align:middle;" alt="管理员" title="我是管理员" />
<!--{/if}-->
<!--{/loop}-->
<!--{/if}-->
通过历遍数据表查询该用户是否存在标定为群主的字段,如果有则返回圈主标识图片。 我今天会很忙,忙着夸夸你!
页:
[1]