国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.4KB

  1. <?php
  2. if(!defined('DEDEINC'))
  3. {
  4. exit("Request Error!");
  5. }
  6. /**
  7. * 会员信息调用标签
  8. *
  9. * @version $Id: memberlist.lib.php 1 9:29 2010年7月6日Z tianya $
  10. * @package DedeCMS.Taglib
  11. * @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
  12. * @license http://help.dedecms.com/usersguide/license.html
  13. * @link http://www.dedecms.com
  14. */
  15. /*>>dede>>
  16. <name>会员信息列表</name>
  17. <type>全局标记</type>
  18. <for>V55,V56,V57</for>
  19. <description>会员信息调用标签</description>
  20. <demo>
  21. {dede:memberlist orderby='scores' row='20'}
  22. <a href="../member/index.php?uid={dede:field.userid /}">{dede:field.userid /}</a>
  23. <span>{dede:field.scores /}</span>
  24. {/dede:memberlist}
  25. </demo>
  26. <attributes>
  27. <iterm>row:调用数目</iterm>
  28. <iterm>iscommend:是否为推荐会员</iterm>
  29. <iterm>orderby:按登录时间排序 money 按金钱排序 scores 按积分排序</iterm>
  30. </attributes>
  31. >>dede>>*/
  32. //orderby = logintime(login new) or mid(register new)
  33. function lib_memberlist(&$ctag, &$refObj)
  34. {
  35. global $dsql,$sqlCt;
  36. $attlist="row|6,iscommend|0,orderby|logintime,signlen|50";
  37. FillAttsDefault($ctag->CAttribute->Items,$attlist);
  38. extract($ctag->CAttribute->Items, EXTR_SKIP);
  39. $revalue = '';
  40. $innerText = trim($ctag->GetInnerText());
  41. if(empty($innerText)) $innerText = GetSysTemplets('memberlist.htm');
  42. $wheresql = ' WHERE mb.spacesta>-1 AND mb.matt<10 ';
  43. if($iscommend > 0) $wheresql .= " AND mb.matt='$iscommend' ";
  44. $sql = "SELECT mb.*,ms.spacename,ms.sign FROM `#@__member` mb
  45. LEFT JOIN `#@__member_space` ms ON ms.mid = mb.mid
  46. $wheresql order by mb.{$orderby} DESC LIMIT 0,$row ";
  47. $ctp = new DedeTagParse();
  48. $ctp->SetNameSpace('field','[',']');
  49. $ctp->LoadSource($innerText);
  50. $dsql->Execute('mb',$sql);
  51. while($row = $dsql->GetArray('mb'))
  52. {
  53. $row['spaceurl'] = $GLOBALS['cfg_basehost'].'/member/index.php?uid='.$row['userid'];
  54. if(empty($row['face'])){
  55. $row['face']=($row['sex']=='女')? $GLOBALS['cfg_memberurl'].'/templets/images/dfgirl.png' : $GLOBALS['cfg_memberurl'].'/templets/images/dfboy.png';
  56. }
  57. foreach($ctp->CTags as $tagid=>$ctag){
  58. if(isset($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }
  59. }
  60. $revalue .= $ctp->GetResult();
  61. }
  62. return $revalue;
  63. }