A라는 그룹안에 있는 8개의 게시판 중에서 오늘 가장 많이 본 게시물을 10위까지 출력하는 소스를 사용중입니다.
제목옆에 오늘 본 조회숫자를 출력하고 싶은데요.
어떻게 해야 할까요?
회원님들의 가르침을 부탁드립니다.
꾸벅.
태풍이 또 온다네요. 비 피해 없으시기를..
제목옆에 오늘 본 조회숫자를 출력하고 싶은데요.
어떻게 해야 할까요?
회원님들의 가르침을 부탁드립니다.
꾸벅.
태풍이 또 온다네요. 비 피해 없으시기를..
댓글 8개
아길이님 안녕하세요^^
lib파일 소스를 올려 봅니다.
<?
// m3_latest_popular ver 1.00 2009-06-20
// 최근 인기글 가져오는 함수 설정
// please give feedbacks to http://bomool.net/
function latest_popular($skin_dir="basic", $duration=7, $gr_id="", $bo_table="", $title="", $rows=10, $subject_len=40) {
// 변수 자동 조정
global $g4;
if(!$duration) $duration = 7;
if(!strlen($skin_dir)) $skin_dir = "basic";
if(!$rows) $rows = 10;
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
// 글 가져오기
if(strlen($bo_table)) { // 특정 게시판에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND bo_table='$bo_table' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "게시판 최근 인기글";
}
elseif(strlen($gr_id)) { // 특정 그룹에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND gr_id='$gr_id' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "그룹 최근 인기글";
}
else { // 전체 게시글에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "최근 인기글";
}
// list 만들기
while($row = sql_fetch_array($query)) {
$temp = sql_fetch("select * from `{$g4[write_prefix]}{$row[bo_table]}` where wr_id='$row[wr_id]'");
// board 설정 가져오기
$board = sql_fetch("select * from `$g4[board_table]` where bo_table = '$row[bo_table]'");
$list[] = get_list($temp, $board, $latest_skin_path, $subject_len);
}
// 스킨 호환을 위해
$board[bo_subject] = $title;
// 스킨 이용
include("$g4[path]/skin/latest/$skin_dir/latest.skin.php");
}
?>
lib파일 소스를 올려 봅니다.
<?
// m3_latest_popular ver 1.00 2009-06-20
// 최근 인기글 가져오는 함수 설정
// please give feedbacks to http://bomool.net/
function latest_popular($skin_dir="basic", $duration=7, $gr_id="", $bo_table="", $title="", $rows=10, $subject_len=40) {
// 변수 자동 조정
global $g4;
if(!$duration) $duration = 7;
if(!strlen($skin_dir)) $skin_dir = "basic";
if(!$rows) $rows = 10;
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
// 글 가져오기
if(strlen($bo_table)) { // 특정 게시판에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND bo_table='$bo_table' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "게시판 최근 인기글";
}
elseif(strlen($gr_id)) { // 특정 그룹에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND gr_id='$gr_id' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "그룹 최근 인기글";
}
else { // 전체 게시글에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "최근 인기글";
}
// list 만들기
while($row = sql_fetch_array($query)) {
$temp = sql_fetch("select * from `{$g4[write_prefix]}{$row[bo_table]}` where wr_id='$row[wr_id]'");
// board 설정 가져오기
$board = sql_fetch("select * from `$g4[board_table]` where bo_table = '$row[bo_table]'");
$list[] = get_list($temp, $board, $latest_skin_path, $subject_len);
}
// 스킨 호환을 위해
$board[bo_subject] = $title;
// 스킨 이용
include("$g4[path]/skin/latest/$skin_dir/latest.skin.php");
}
?>
우선 저도 많이 초보 입니다.
보아하니
m3hit 라는 테이블이 에서 주어진 날짜 사이에 힛트수를 합산해서 정열을 하는것 같습니다.
해서 그 합산 값을 뿌려주면 될것 같은데요..
현제 특정 구룹이라고 하셨으니..
elseif(strlen($gr_id)) { // 특정 그룹에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND gr_id='$gr_id' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "그룹 최근 인기글";
}
립파일은 위 부분을 손봐야 할것 같구요
현제 bo_table, wr_id 이 두가지만 가저 오라고 했네요,, 여기다가 hit 를 추가 하구요
bo_table, wr_id, hit <== 이런식으로요..
근데 문제는 여기서도 합산이 되는지 저도 잘 모르겠습니다
된다면 bo_table, wr_id, sum(hit) 이렇게 되겠지요..(짐작.)
해서 이제 스킨에서 뿌려줘야 하는데,,,
스킨의 for 문에서 따라 변수명이 다르므로 역시 이 스킨파일도 올리셔야 할것 같습니다.
첨부 하시는것이 좋을듯 ,,,아님 참고 링크등요,,,
다시 한번 말씀 드리지만 저는 잘 모릅니다
다만 공부를 위해서 한번 둘러보는거구요
또 저 또한 질문을 할때 쓸라고 포인트를 위해서 ㅎㅎ
진짜 답변은 고수님께 패스 합니다~
다시 보니 일반 최신글 스킨을 사용하네요,,
저도 헷갈리네요 이 글은 무시하셔야 할것 같습니다.
그래도 모르니 스킨에서 $row[hit] 를 추가 해보세요.
보아하니
m3hit 라는 테이블이 에서 주어진 날짜 사이에 힛트수를 합산해서 정열을 하는것 같습니다.
해서 그 합산 값을 뿌려주면 될것 같은데요..
현제 특정 구룹이라고 하셨으니..
elseif(strlen($gr_id)) { // 특정 그룹에서
$query = sql_query("select bo_table, wr_id from `m3hit` where date >= (curdate() - interval $duration day) AND gr_id='$gr_id' GROUP BY bo_table, wr_id ORDER BY sum(hit) desc limit $rows");
if(!strlen($title)) $title = "그룹 최근 인기글";
}
립파일은 위 부분을 손봐야 할것 같구요
현제 bo_table, wr_id 이 두가지만 가저 오라고 했네요,, 여기다가 hit 를 추가 하구요
bo_table, wr_id, hit <== 이런식으로요..
근데 문제는 여기서도 합산이 되는지 저도 잘 모르겠습니다
된다면 bo_table, wr_id, sum(hit) 이렇게 되겠지요..(짐작.)
해서 이제 스킨에서 뿌려줘야 하는데,,,
스킨의 for 문에서 따라 변수명이 다르므로 역시 이 스킨파일도 올리셔야 할것 같습니다.
첨부 하시는것이 좋을듯 ,,,아님 참고 링크등요,,,
다시 한번 말씀 드리지만 저는 잘 모릅니다
다만 공부를 위해서 한번 둘러보는거구요
또 저 또한 질문을 할때 쓸라고 포인트를 위해서 ㅎㅎ
진짜 답변은 고수님께 패스 합니다~
다시 보니 일반 최신글 스킨을 사용하네요,,
저도 헷갈리네요 이 글은 무시하셔야 할것 같습니다.
그래도 모르니 스킨에서 $row[hit] 를 추가 해보세요.
게시글 목록
| 번호 | 제목 |
|---|---|
| 284508 | |
| 284499 | |
| 284492 | |
| 284490 | |
| 284484 | |
| 284481 | |
| 284478 | |
| 284476 | |
| 284474 | |
| 284472 | |
| 284470 | |
| 284458 | |
| 284457 | |
| 284454 | |
| 284453 | |
| 284447 | |
| 284446 | |
| 284444 | |
| 284441 | |
| 284440 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기