国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

191 行
6.8KB

  1. <?php
  2. /**
  3. * @version $Id: index.php 1 8:24 2010年7月9日Z tianya $
  4. * @package DedeCMS.Member
  5. * @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
  6. * @license http://help.dedecms.com/usersguide/license.html
  7. * @link http://www.dedecms.com
  8. */
  9. require_once(dirname(__FILE__)."/config.php");
  10. $uid=empty($uid)? "" : RemoveXSS($uid);
  11. if(empty($action)) $action = '';
  12. if(empty($aid)) $aid = '';
  13. $menutype = 'mydede';
  14. if ( preg_match("#PHP (.*) Development Server#",$_SERVER['SERVER_SOFTWARE']) )
  15. {
  16. if ( $_SERVER['REQUEST_URI'] == dirname($_SERVER['SCRIPT_NAME']) )
  17. {
  18. header('HTTP/1.1 301 Moved Permanently');
  19. header('Location:'.$_SERVER['REQUEST_URI'].'/');
  20. }
  21. }
  22. //会员后台
  23. if($uid=='')
  24. {
  25. $iscontrol = 'yes';
  26. if(!$cfg_ml->IsLogin())
  27. {
  28. include_once(dirname(__FILE__)."/templets/index-notlogin.htm");
  29. }
  30. else
  31. {
  32. $minfos = $dsql->GetOne("SELECT * FROM `#@__member_tj` WHERE mid='".$cfg_ml->M_ID."'; ");
  33. $minfos['totaluse'] = $cfg_ml->GetUserSpace();
  34. $minfos['totaluse'] = number_format($minfos['totaluse']/1024/1024,2);
  35. if($cfg_mb_max > 0) {
  36. $ddsize = ceil( ($minfos['totaluse']/$cfg_mb_max) * 100 );
  37. }
  38. else {
  39. $ddsize = 0;
  40. }
  41. require_once(DEDEINC.'/channelunit.func.php');
  42. /* 最新文档8条 */
  43. $archives = array();
  44. $sql = "SELECT arc.*, category.namerule, category.typedir, category.moresite, category.siteurl, category.sitepath, mem.userid
  45. FROM #@__archives arc
  46. LEFT JOIN #@__arctype category ON category.id=arc.typeid
  47. LEFT JOIN #@__member mem ON mem.mid=arc.mid
  48. WHERE arc.arcrank > -1
  49. ORDER BY arc.sortrank DESC LIMIT 8";
  50. $dsql->SetQuery($sql);
  51. $dsql->Execute();
  52. while ($row = $dsql->GetArray())
  53. {
  54. $row['htmlurl'] = GetFileUrl($row['id'], $row['typeid'], $row['senddate'], $row['title'], $row['ismake'], $row['arcrank'], $row['namerule'], $row['typedir'], $row['money'], $row['filename'], $row['moresite'], $row['siteurl'], $row['sitepath']);
  55. $archives[] = $row;
  56. }
  57. /** 调用访客记录 **/
  58. $_vars['mid'] = $cfg_ml->M_ID;
  59. if(empty($cfg_ml->fields['face']))
  60. {
  61. $cfg_ml->fields['face']=($cfg_ml->fields['sex']=='女')? 'templets/images/dfgirl.png' : 'templets/images/dfboy.png';
  62. }
  63. /** 我的收藏 **/
  64. $favorites = array();
  65. $dsql->Execute('fl',"SELECT * FROM `#@__member_stow` WHERE mid='{$cfg_ml->M_ID}' LIMIT 5");
  66. while($arr = $dsql->GetArray('fl'))
  67. {
  68. $favorites[] = $arr;
  69. }
  70. /** 欢迎新朋友 **/
  71. $sql = "SELECT * FROM `#@__member` ORDER BY mid DESC LIMIT 3";
  72. $newfriends = array();
  73. $dsql->SetQuery($sql);
  74. $dsql->Execute();
  75. while ($row = $dsql->GetArray()) {
  76. $newfriends[] = $row;
  77. }
  78. /** 好友记录 **/
  79. $sql = "SELECT F.*,M.face,M.sex FROM `#@__member` AS M LEFT JOIN #@__member_friends AS F ON F.fid=M.mid WHERE F.mid='{$cfg_ml->M_ID}' ORDER BY F.addtime desc LIMIT 6";
  80. $friends = array();
  81. $dsql->SetQuery($sql);
  82. $dsql->Execute();
  83. while ($row = $dsql->GetArray()) {
  84. $friends[] = $row;
  85. }
  86. /** 有没新短信 **/
  87. $pms = $dsql->GetOne("SELECT COUNT(*) AS nums FROM #@__member_pms WHERE toid='{$cfg_ml->M_ID}' AND `hasview`=0 AND folder = 'inbox'");
  88. /** 查询会员状态 **/
  89. $moodmsg = $dsql->GetOne("SELECT * FROM #@__member_msg WHERE mid='{$cfg_ml->M_ID}' ORDER BY dtime desc");
  90. /** 会员操作日志 **/
  91. $sql = "SELECT * From `#@__member_feed` where ischeck=1 order by fid desc limit 8";
  92. $feeds = array();
  93. $dsql->SetQuery($sql);
  94. $dsql->Execute();
  95. while ($row = $dsql->GetArray()) {
  96. $feeds[] = $row;
  97. }
  98. $dpl = new DedeTemplate();
  99. $tpl = dirname(__FILE__)."/templets/index.htm";
  100. $dpl->LoadTemplate($tpl);
  101. $dpl->display();
  102. }
  103. }
  104. /*-----------------------------
  105. //会员空间主页
  106. function space_index(){ }
  107. ------------------------------*/
  108. else
  109. {
  110. require_once(DEDEMEMBER.'/inc/config_space.php');
  111. if($action == '')
  112. {
  113. include_once(DEDEINC."/channelunit.func.php");
  114. $dpl = new DedeTemplate();
  115. $tplfile = DEDEMEMBER."/space/{$_vars['spacestyle']}/index.htm";
  116. //更新最近访客记录及站点统计记录
  117. $vtime = time();
  118. $last_vtime = GetCookie('last_vtime');
  119. $last_vid = GetCookie('last_vid');
  120. if(empty($last_vtime))
  121. {
  122. $last_vtime = 0;
  123. }
  124. if($vtime - $last_vtime > 3600 || !preg_match('#,'.$uid.',#i', ','.$last_vid.',') )
  125. {
  126. if($last_vid!='')
  127. {
  128. $last_vids = explode(',',$last_vid);
  129. $i = 0;
  130. $last_vid = $uid;
  131. foreach($last_vids as $lsid)
  132. {
  133. if($i>10)
  134. {
  135. break;
  136. }
  137. else if($lsid != $uid)
  138. {
  139. $i++;
  140. $last_vid .= ','.$last_vid;
  141. }
  142. }
  143. }
  144. else
  145. {
  146. $last_vid = $uid;
  147. }
  148. PutCookie('last_vtime', $vtime, 3600*24, '/');
  149. PutCookie('last_vid', $last_vid, 3600*24, '/');
  150. if($cfg_ml->IsLogin() && $cfg_ml->M_LoginID != $uid)
  151. {
  152. $vip = GetIP();
  153. $arr = $dsql->GetOne("SELECT * FROM `#@__member_vhistory` WHERE mid='{$_vars['mid']}' AND vid='{$cfg_ml->M_ID}' ");
  154. if(is_array($arr))
  155. {
  156. $dsql->ExecuteNoneQuery("UPDATE `#@__member_vhistory` SET vip='$vip',vtime='$vtime',count=count+1 WHERE mid='{$_vars['mid']}' AND vid='{$cfg_ml->M_ID}' ");
  157. }
  158. else
  159. {
  160. $query = "INSERT INTO `#@__member_vhistory`(mid,loginid,vid,vloginid,count,vip,vtime)
  161. VALUES('{$_vars['mid']}','{$_vars['userid']}','{$cfg_ml->M_ID}','{$cfg_ml->M_LoginID}','1','$vip','$vtime'); ";
  162. $dsql->ExecuteNoneQuery($query);
  163. }
  164. }
  165. $dsql->ExecuteNoneQuery("UPDATE `#@__member_tj` SET homecount=homecount+1 WHERE mid='{$_vars['mid']}' ");
  166. }
  167. $dpl->LoadTemplate($tplfile);
  168. $dpl->display();
  169. exit();
  170. }
  171. else
  172. {
  173. require_once(DEDEMEMBER.'/inc/space_action.php');
  174. exit();
  175. }
  176. }