www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/include/parse/members.php

    <?php
!defined('M_COM') && exit('No Permission');
function mem_sqlstr(&$tag,$temparr=array(),$type='c',$iscount=0){
	global $grouptypes,$tblprefix,$timestamp,$mchannels;
	$sql = $sqlorder = '';
	$sqlselect = $iscount ? "SELECT COUNT(*)" : "SELECT m.*,s.*";
	$sqlwhere = " WHERE m.checked=1";
	$sqlfrom = " FROM {$tblprefix}members m LEFT JOIN {$tblprefix}members_sub s ON m.mid=s.mid";
	foreach($grouptypes as $k => $v){
		!empty($tag['ugid'.$k]) && $sqlwhere .= " AND m.grouptype$k='".$tag['ugid'.$k]."'";
	}
	if(!empty($tag['chsource'])){
		$mchid = 0;
		if($tag['chsource'] == 1){
			if(empty($temparr['mchid'])) return false;
			$sqlwhere .= " AND m.mchid='".$temparr['mchid']."'";
			$mchid = $temparr['mchid'];
		}elseif($tag['chsource'] == 2){
			if(empty($tag['chids'])) return false;
			$tchids = explode(',',$tag['chids']);
			$sqlwhere .= " AND m.mchid IN (".mimplode($tchids).")";
			if(count($tchids) == 1) $mchid = $tchids[0];
		}
		if(!$iscount && !empty($tag['detail']) && $mchid && @$mchannels[$chid]){
			$customtable = 'members_'.$mchid;
			$sqlselect .= ",c.*";
			$sqlfrom .= " LEFT JOIN {$tblprefix}$customtable c ON c.mid=m.mid";
		}
	}
	!empty($tag['indays']) && $sqlwhere .= " AND m.regdate > $timestamp - 86400 * $tag[indays]";
	!empty($tag['outdays']) && $sqlwhere .= " AND m.regdate < $timestamp - 86400 * $tag[outdays]";
	isset($tag['clicks']) && $sqlwhere .= " AND m.clicks > $tag[clicks]";
	isset($tag['onlinetime']) && $sqlwhere .= " AND m.onlinetime > $tag[onlinetime]";
	isset($tag['msclicks']) && $sqlwhere .= " AND s.msclicks > $tag[praises]";
	isset($tag['comments']) && $sqlwhere .= " AND s.comments > $tag[comments]";
	isset($tag['checks']) && $sqlwhere .= " AND s.checks > $tag[checks]";
	isset($tag['purchases']) && $sqlwhere .= " AND s.purchases > $tag[purchases]";
	isset($tag['answers']) && $sqlwhere .= " AND s.answers > $tag[answers]";
	isset($tag['credits']) && $sqlwhere .= " AND s.credits > $tag[credits]";
	!empty($tag['wherestr']) && $sqlwhere .= " AND ".stripslashes($tag['wherestr']);
	if(!$iscount){
		!empty($tag['orderby']) && $sqlorder .= str_replace('_',' ',$tag['orderby']);
		!empty($tag['orderstr']) && $sqlorder .= ($sqlorder ? ',' : '').$tag['orderstr'];
	}
	$sqlorder = $iscount ? '' : (empty($sqlorder) ? " ORDER BY m.mid ASC" : " ORDER BY $sqlorder");
	$sql = $sqlselect.$sqlfrom.$sqlwhere.$sqlorder;
	return $sql;
}

?>