모든 게시판에서 추천수 가장많은글을 추출할수있을까요?
본문
메인 index에 베스트 글로 글 몇개를 띄우고싶은데
가능할까요?
답변 3
아래의 소스를 test.php 파일로 만든 다음에 루트폴더에 업로드후
웹브라우저를 통해서 먼저, 출력을 확인해 보세요..
소스를 보면 게시판이름, 게시판타이틀을 기재하는 곳이 있으니 꼭 수정후 출력해 보세요.
나머지는 사용자분께서 적절히 꾸며서 사용하시면 될듯 싶네요...
<?
include_once($_SERVER['DOCUMENT_ROOT'] ."/common.php");
?>
<!doctype html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
@charset "utf-8";
/* SIR 지운아빠 */
.lt_pc {float:left;margin-left:20px}
.lt {position:relative;float:left;margin-bottom:20px;padding-bottom:10px;width:560px;height:auto;}
.lt ul {margin:0 0 10px;padding:0;list-style:none}
.lt li {padding:3px 0;border-bottom:1px solid #e9e9e9}
.lt .lt_title {display:block;padding:10px 0 8px;border-bottom:1px solid #e9e9e9}
.lt .lt_more {position:absolute;top:10px;right:0}
.lt .cnt_cmt {display:inline-block;margin:0 0 0 3px;font-weight:bold}
.lt .bo_title {display:inline-block;margin-left:10px;width:120px}
.lt .bo_subject {display:inline-block;width:300px}
.lt .bo_subject a {font-size:16px;color:#000;text-decoration:none}
.lt .bo_date {display:inline-block;width:100px;text-align:right}
</style>
</head>
<body>
<?
// 제목 글자수
$cut_num=15;
// 출력할 갯수
$cut_rows=10;
// 출력할 게세판이름
$g5_board_arr=array('notice','pds','alliance');
// 출력할 게시판 타이틀
$g5_board2_arr=array('공지사항','자료실','협력사');
$g5_board1=implode("|", $g5_board_arr);
$g5_board2=implode("|", $g5_board2_arr);
$board_name=explode("|", $g5_board1);
$board_name2=explode("|", $g5_board2);
$loop_num=count($board_name);
for($i=0; $i<$loop_num; $i++){
$boards_ids="g5_write_".$board_name[$i];
$b_query="select count(wr_id) as cnt from g5_write_".$board_name[$i]." where wr_is_comment='0'";
$b_result=sql_fetch($b_query);
$board_num +=$b_result['cnt'];
}
if($board_num) $sl="";
$total_n=$board_num;
if($board_num) $board_num=$board_num;
else $board_num="";
$view_num=$board_num.$sl;
for($i=0; $i<$loop_num; $i++){
$from_record +=($page-1)*$rows;
$boards_ids="g5_write_".$board_name[$i];
$query="select * from {$boards_ids} where wr_is_comment='0' order by wr_num limit 0, {$cut_rows}";
$result=sql_query($query);
while($row=sql_fetch_array($result)){
$parent[]=$row['wr_id'];
$bbs_tmp[]=$board_name[$i];
$bbs_tmp2[]=$board_name2[$i];
$subject[]=cut_str($row['wr_subject'],$cut_num);
$name[]=stripslashes($row['wr_name']);
$reg_date2[]=date("Y-m-d", strtotime($row['wr_datetime']));
$reg_date[]=$row['wr_datetime'];
$hit[]=(int)$row['wr_hit'];
$good[]=(int)$row['wr_good'];
$total_comment_p[]=($row['wr_comment']) ? (int)$row['wr_comment'] : "";
}
}
if($view_num!=0){
arsort($good);
$view_str='';
while(list($key, $value)=each($good)) {
if(!$ii) $ii=1;
$view_str .='<li><span class="bo_title">['. $bbs_tmp2[$key] .']</span> <span class="bo_subject"><a href="'. G5_BBS_URL .'/board.php?bo_table='. $bbs_tmp[$key].'&wr_id='. $parent[$key] .'">'. $subject[$key] .'</a> '. $total_comment_p[$key].'</span><span class="bo_date"> '.$reg_date2[$key].'</span></li>'.PHP_EOL;
$ii++;
}
}
?>
<div class="lt">
<strong class="lt_title">추천수 전체보기</strong>
<ul>
<?
if($view_num!=0) {
?>
<?=$view_str?>
</ul>
<?}else{?>
<li>작성한 게시물이 없습니다.</li>
</ul>
</div>
<? } ?>
</body>
</html>
네가능 합니다
여기 인기,추천최신글스킨을 이용하시면 됩니다
메인에 적용하는 방법도 있이니 내용잘읽어보시고 적용해보세요