답변 2개
채택된 답변
+20 포인트
3년 전
</p>
<p>/* 1주일 구하기 (전주 월 ~ 일) */
$today = time();
$week = date("w");</p>
<p>$week_first = $today-($week*86400);
$week_last = $week_first+(6*86400);</p>
<p>$start_date = date("Y-m-d",$week_first-(86400*6))." 00:00:00";
$end_date = date("Y-m-d",$week_last-(86400*6))." 23:59:59";</p>
<p>
/* 1주일 기간내에 포인트 합계 3위까지 구하기 */
$sql = "SELECT `mb_id`, sum(po_point) FROM `g5_point` WHERE `po_datetime` >= '".$start_date."' AND `po_datetime` <= '".$end_date."' GROUP BY `mb_id` ORDER by sum(po_point) DESC limit 3";
$result = sql_query($sql);</p>
<p> </p>
<p>/* 3위까지 배열에 담기 */
$week_rank= array();
while($row=sql_fetch_array($result)) {
$week_rank[] = $row['mb_id'];
}
</p>
<p>
예를 들어서 게시판 목록에 표시한다고 하시면
해당 게시판 스킨 list.skin.php 상단에 저렇게 하시고
해당 게시판 이름을 $list[$i]['name'] 표시한다면
for ($i=0; $i<count($list); $i++) { 다음에
</p>
<p>if($list[$i]['mb_id'] == $week_rank[0]){ //1등
$list[$i]['name'] = $list[$i]['name']."(1등)";
}else if($list[$i]['mb_id'] == $week_rank[1]){ //2등
$list[$i]['name'] = $list[$i]['name']."(2등)";
}else if($list[$i]['mb_id'] == $week_rank[2]){ //3등
$list[$i]['name'] = $list[$i]['name']."(3등)";
}</p>
<p>
해보세요.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
김마린2
3년 전
D
Dessi
3년 전
$sql = "SELECT `mb_id`, sum(po_point) FROM `g5_point` WHERE `mb_id` <> 'admin' AND `po_datetime` >= '".$start_date."' AND `po_datetime` <= '".$end_date."' GROUP BY `mb_id` ORDER by sum(po_point) DESC limit 3";
`mb_id` <> 'admin' AND
를 추가해주시면 됩니다.
`mb_id` <> 'admin' AND
를 추가해주시면 됩니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
여기서 admin, 같은 관리자 계정은 제외해줘야될거 같은데 어떻게하면될까요?