그누4용 최근게시글 페이지기능을 그누5로 변경
본문
그누4용 최근게시글 페이징 소스 입니다.
이걸 그누5로 맞게 고쳐봤는데 작동이되지 않습니다.
g4를 모두 g5 로 변경만 해서는 안되는 것 같은데 어딜 더 손을 봐야 할까요?
일반게시글 처럼 최근게시글에서도 동일한 페이징기능을 구현하고자 합니다
고수님들 도움을 부탁드립니다.
// 최신글 추출
function latest_paging($skin_dir="", $bo_table, $url, $page=1, $page_name="page", $rows=5, $subject_len=40, $write_page=5, $total_count = '', $options="")
{
global $g5, $config;
if ($skin_dir)
$GLOBALS['latest_skin_path'] = $latest_skin_path = "{$g5['path']}/skin/latest/$skin_dir";
else
$GLOBALS['latest_skin_path'] = $latest_skin_path = "{$g5['path']}/skin/latest/basic";
$list = array();
$sql = " select * from {$g5['board_table']} where bo_table = '{$bo_table}' ";
$board = sql_fetch($sql);
$bo_subject = get_text($board['bo_subject']);
$tmp_write_table = $g5['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0 order by wr_num limit 0, {$rows} ";
$result = sql_query($sql);
if($total_count == "")
{
$sql = sql_fetch(" select count(*) as cnt, MIN(wr_num) as n_num, MAX(wr_num) as m_num from $tmp_write_table where wr_is_comment = 0 order by wr_num");
$total_count = $sql[cnt];
$min_number = $sql[n_num];
$max_number = $sql[m_num];
} else {
$sql = sql_fetch(" select count(*) as cnt, MIN(wr_num) as n_num from $tmp_write_table where wr_is_comment = 0 order by wr_num limit 0, $total_count");
$min_number = $sql[n_num];
$max_number = $sql[n_num] + $total_count;
}
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
if (!$page) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함
// 게시물 구해오기
$sql = " select * from $tmp_write_table where wr_is_comment = 0 AND (wr_num between '".$min_number."' and '".$max_number."') order by wr_num limit $from_record, $rows ";
//explain($sql);
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++) {
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
}
if(strstr($url, "?")) {
$connect = "&";
} else {
$connect = "?";
}
$write_pages = get_paging($write_page, $page, $total_page, $url.$connect.$page_name."=");
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
답변을 작성하시기 전에 로그인 해주세요.