랭킹구하는거 도움좀 주실분... > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

랭킹구하는거 도움좀 주실분... 정보

랭킹구하는거 도움좀 주실분...

본문

게시물이 있습니다 예를들어
게시판에 게시글이  5개정도 있다고 했을대
조회수가 
10
20
11
32
50
순이라고 가정하고  저 게시물 조회수 옆에 랭킹을 표시하고 싶은데요..
게시글 높은순으로 정렬 말고 리스트 출력은 그대로 하되.... 조회수 크기에 비례해 
10(5)
20(3)
11(4)
32(2)
50(1)
이렇게 표시하고 싶은데 머리가 안돌아가서 그러는데 조언좀 부탁 드려봅니다 ㅠㅠ

댓글 전체

1. list.skin.php 파일의 상단(<? ~ ?> 사이)에..

$sel = sql_query(" select wr_id from $write_table where wr_datetime like '$g4[time_ymd]%' and wr_is_comment<1 order by wr_hit desc, wr_datetime desc limit 10 ");
while($row=sql_fetch_array($sel)){
  $hit_rank[] = $row['wr_id'];
}

위 소스를 삽입.

2. list.skin.php 파일의 [리스트 제목 부분]을 표시해 주는 부분을 잘 파악하셔서

if ($list[$i][is_notice]){
  echo "<a href='{$list[$i][href]}'><span class='notice'>{$list[$i][subject]}</span></a>";
}else{
  if(count($hit_rank) && in_array($list[$i][wr_id], $hit_rank)){
    $rank_num = array_search($list[$i][wr_id], $hit_rank); $rank_num++;
    $rank_num = "<span style='font-weight:bold; color:#99cc00'>[".$rank_num."위]</span>";
  }else{
    $rank_num='';
  }
  echo "<a href='{$list[$i][href]}'>{$list[$i][subject]}</a> $rank_num";
}

위와 같은 형태로 삽입.

위 방법은 하루동안의 게시물 조회수를 기준으로 랭킹 [베스트 10] 을 표시합니다.
만약 전체 조회수를 원하신다면...
1번에 넣은 소스를 아래처럼 수정하시면 되는데 게시물이 많아질 경우 부하가 심하게 걸릴 수 있어서 추천하지는 않습니다. (특히 limit 을 걸지 않을 때)

$sel = sql_query(" select wr_id from $write_table where  wr_is_comment<1 order by wr_hit desc, wr_datetime desc limit 10");
while($row=sql_fetch_array($sel)){
  $hit_rank[] = $row['wr_id'];
}
전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT