팁엔테크=J.MANDO님그룹별최신글뽑기(인쿨르드방식)소스좀봐주실래요. > 그누3질답

그누3질답

팁엔테크=J.MANDO님그룹별최신글뽑기(인쿨르드방식)소스좀봐주실래요. 정보

팁엔테크=J.MANDO님그룹별최신글뽑기(인쿨르드방식)소스좀봐주실래요.

본문

안녕하세요.
글제목에서처럼 만도님그룹별최신글뽑기소스질문입니다.
1 <?
2 if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
3
4 define("_DOCTYPE_", "DESIGN");
5if ($hours < 1 || $hours > 24) {
6 $hours = 24;
7 }
8 ?>
9 <table width=100% cellpadding=2 cellspacing=0 align=center valign=top>
10 <tr>
11<td colspan=3 align=center height=27 background='./<?=$cfg[bbs_dir]?>/imgs/b_titlebg.gif' st12yle='border:1px solid #A3A6A9;'>최신목록
13</td>
14</tr>
15<?
16$intime = date("Y-m-d H:i:s", time() - (int)(60 * 60 * $hours));
17$sql = " select a.bo_subject, a.bo_table, b.gr_subject from $cfg[table_board] a, $cfg[table_group] b 18 where a.gr_id = b.gr_id AND b.gr_id = 'hw' 
19order by b.gr_id, a.bo_table limit 2 ";
20$result = sql_query($sql);
while ($row = mysql_fetch_array($result)) {
$tbl = "{$cfg[write_table_prefix]}{$row[bo_table]}";
$sql2 = " select wr_id,
wr_parent_id,
mb_id,
wr_name,
wr_email,
wr_homepage,
wr_num,
wr_subject,
wr_content,
wr_comment,
wr_commentcnt,
wr_datetime
from $tbl
where wr_datetime
order by wr_id desc  ";
$result2 = sql_query($sql2);
for ($i = 0; $row2 = mysql_fetch_array($result2); $i++) {
if ($row2[wr_comment] > 0) {
$sql3 = " select wr_subject
from $tbl
where wr_comment = 0
and wr_parent_id = '$row2[wr_parent_id]' ";
$row3 = sql_fetch($sql3);
$wr_subject = $row3[wr_subject];
$wr_content = $row3[wr_content];
} else {
$wr_subject = $row2[wr_subject];
$wr_content = $row2[wr_content];
}

$wr_content = get_text($wr_content);
$wr_subject = get_text($wr_subject);
$wr_datetime = $row2[wr_datetime];

$key = $row2[wr_datetime] . $row[bo_table] . $row2[wr_id];
$list[$key]->bo_subject = $row[bo_subject];

$list[$key]->bo_table = $row[bo_table];
$list[$key]->mb_id = $row2[mb_id];
$list[$key]->mb_open = $row2[mb_open];
$list[$key]->wr_id = $row2[wr_id];
$list[$key]->wr_parent_id = $row2[wr_parent_id];
$list[$key]->wr_email = $row2[wr_email];
$list[$key]->wr_homepage = $row2[wr_homepage];
$list[$key]->wr_name = get_text(cut_str($row2[wr_name],12));
$list[$key]->wr_subject = get_text(cut_str($wr_subject,45,'…'));
$list[$key]->wr_content = get_text(cut_str($wr_content,40,'…'));
$list[$key]->wr_comment = $row2[wr_comment];
$list[$key]->wr_commentcnt = $row2[wr_commentcnt];
$list[$key]->wr_datetime = $row2[wr_datetime];
}
mysql_free_result($result2);
}
mysql_free_result($result);
if (count($list) > 0) {
krsort($list);
foreach ($list as $key=>$value) {
$k++;
$comment = "";
$atag_comment = "";
if ($value->wr_comment > 0) {
$comment = "<span style='font-size:8pt;'>[c]</span> ";
$atag_comment = "#c{$value->wr_id}";
}

$commentcnt = "";
if ($value->wr_commentcnt > 0) {
$commentcnt = "<font size=-2>({$value->wr_commentcnt})</font>";
}
$name = gblayer($value->mb_id, cut_str($value->wr_name,12), $value->wr_email, $value->wr_homepage);
//$list = $i++%2;
$value->bo_subject = cut_str($value->bo_subject, 20);
$list = $i++%2;
$icon_new = "";
    if ($value->wr_datetime >= $intime) {
        $icon_new = "<img src='./$cfg[bbs_dir]/imgs/icon_new.gif' border=0 align='absmiddle'>";
    }
echo "
<tr class='list$list' height=22>
<td>
  <table width=98% cellpadding=0 cellspacing=0 align=center>
  <tr>   
    <td width=17% nowrap>$icon_tip  [<a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$value->bo_table."'>".$value->bo_subject."</a>]</td>
    <td width=''><a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$value->bo_table."&wr_id=".$value->wr_parent_id."$atag_comment'>{$value->wr_subject} {$commentcnt}$icon_new</a>
    </td>
    </tr>";
      if( $k==1){
echo "<tr>
        <td colspan=2 style='padding-left:10px;padding-right:5px;padding-bottom:3px;padding-top:3px;text-align:justify;'><a href='./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=".$value->bo_table."&wr_id=".$value->wr_parent_id."$atag_comment'>$comment{$value->wr_content}</a>
        </td>
        </tr>";
    }   
 echo"  </table></td></tr>\n";
}
} else {echo "<td height=25 align=center>등록된 글이 없습니다.</td>"; }

?>
</table>
18번줄에 "hw"는그룹명입니다.
19번줄에19order by b.gr_id, a.bo_table limit 2 "; <-----요부분설명좀부탁합니다.
원하는건 위에 hw 그룹에있는모든최근게시물을  모두출력하고싶은데 현재는 그룹내에서도 일부만출력되는데 그룹내최근게시물을 모두출력할려면 어떻게하는지?
아시는분 답변좀부탁합니다.
만도님이설명해주시면 더욱좋겠지만 설명해주실분이 여러분계실것같아 부탁드립니다.

댓글 전체

> order by b.gr_id, a.bo_table
소팅은 먼저 gr_id로 하고 gr_id가 동일할경우 bo_table로 소팅해라

>limit 2
전체 조회된것중 2개만 리턴 해라

전체를 원하신다면 limit 2 이부분만 제거해보십시오
답변고맙습니다.
염치없는일이지만 한가지만더 질문할께요.
limit2 제거하니까
원하는그룹 (그룹한개 "hw") 에서만 출력이 잘되네요.
여기서 전체목록의 갯수를 지정해줄수있는방법은 어떻게하는지?
고맙습니다.
전체 9,564
그누3질답 내용 검색

회원로그인

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