특정레벨 회원글만 최근글로 뽑기 정보
특정레벨 회원글만 최근글로 뽑기본문
별로 어렵지 않을 줄 알고 해봤는데 이거 의외로 어렵네요-_-;;
제가 아직 db에서 쿼리 불러오는 소스를 완전히 숙지못해서 그런듯 합니다.
어떤 게시판에 올라온 글들 중에서 특정레벨 이상의 회원글만 최근글로 뽑아내는 방법 좀 부탁드립니다.
아래는 제가 허접하게나마 작업해본 소스입니다.
// 레벨별 최근글 뽑기 (레벨4 이상)
function latest_lv4($skin_dir="", $bo_table, $rows=10, $subject_len=40)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[member_table] where mb_level >= 4 ";
$result = sql_query($sql);
$row = sql_fetch_array($result);
$mb4lv = $row[mb_id];
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4['write_prefix'] . $bo_table; //
$sql = " select * from $tmp_write_table where wr_is_comment = 0 and mb_id = '$mb4lv' order by wr_num limit 0, $rows ";
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
이걸 extend/extend.lib.php에 저장하여 메인에서
<?=latest_lv4("스킨명", "게시판명", 10, 100);?>
이렇게 불렀는데 안되더군요. 정확하게 말하면 레벨4 이상의 최초 가입된 회원, 즉 관리자글만 뽑아내더군요.
뭐가 문제일까요?
제가 아직 db에서 쿼리 불러오는 소스를 완전히 숙지못해서 그런듯 합니다.
어떤 게시판에 올라온 글들 중에서 특정레벨 이상의 회원글만 최근글로 뽑아내는 방법 좀 부탁드립니다.
아래는 제가 허접하게나마 작업해본 소스입니다.
// 레벨별 최근글 뽑기 (레벨4 이상)
function latest_lv4($skin_dir="", $bo_table, $rows=10, $subject_len=40)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[member_table] where mb_level >= 4 ";
$result = sql_query($sql);
$row = sql_fetch_array($result);
$mb4lv = $row[mb_id];
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4['write_prefix'] . $bo_table; //
$sql = " select * from $tmp_write_table where wr_is_comment = 0 and mb_id = '$mb4lv' order by wr_num limit 0, $rows ";
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
이걸 extend/extend.lib.php에 저장하여 메인에서
<?=latest_lv4("스킨명", "게시판명", 10, 100);?>
이렇게 불렀는데 안되더군요. 정확하게 말하면 레벨4 이상의 최초 가입된 회원, 즉 관리자글만 뽑아내더군요.
뭐가 문제일까요?
댓글 전체
$sql = " select * from $tmp_write_table where wr_is_comment = 0 and mb_id = '$mb4lv' order by wr_num limit 0, $rows ";
이 쿼리를
$sql = " SELECT * FROM `$tmp_write_table ` as a, `g4_member` as b WHERE b.mb_level >='4' and a.mb_id = b.mb_id and a.wr_is_comment ='0' order by a.wr_num limit 0, $rows";
처럼 해보세요
결과값은 나오는거 같은데 속도는 어떨지 모르겠네요
이 쿼리를
$sql = " SELECT * FROM `$tmp_write_table ` as a, `g4_member` as b WHERE b.mb_level >='4' and a.mb_id = b.mb_id and a.wr_is_comment ='0' order by a.wr_num limit 0, $rows";
처럼 해보세요
결과값은 나오는거 같은데 속도는 어떨지 모르겠네요
감사합니다. 제대로 되는군요 ^^