3.0버전에서 최신글 카테고리 뽑기 > 그누3 팁자료실

그누3 팁자료실

3.0버전에서 최신글 카테고리 뽑기 정보

그누호환 3.0버전에서 최신글 카테고리 뽑기

본문

/**********************************************************************
*               [lib/latest.lib.php]소스입니.....                                             *
**********************************************************************/


<?
//==============================================================================
// &nbsp;최신글 관련 함수
//==============================================================================


// 최신글 추출
function latest($skin_dir='', $bo_table, $rows=10, $len=40)
{
 &nbsp; &nbsp;global $latest_skin, $cfg;

 &nbsp; &nbsp;$tmp_latest_skin = $latest_skin;

 &nbsp; &nbsp;// 스킨디렉토리값이 넘어왔다면
 &nbsp; &nbsp;if ($skin_dir) {
 &nbsp; &nbsp; &nbsp; &nbsp;$latest_skin = "./$cfg[bbs_dir]/skin/latest/$skin_dir";
 &nbsp; &nbsp;}

 &nbsp; &nbsp;$sql = " select * from $cfg[table_board] where bo_table = '$bo_table' ";
 &nbsp; &nbsp;$bo = sql_fetch($sql);
 &nbsp; &nbsp;$bo_subject = $bo[bo_subject];

$table = "{$cfg[write_table_prefix]}{$bo_table}";

$sql = " select a.*, mb_open
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from $table a
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;left join $cfg[table_member] b on (b.mb_id = a.mb_id)
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;where a.wr_comment = 0
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;order by a.wr_num, a.wr_datetime desc limit 0, $rows ";
 &nbsp; &nbsp;$result = sql_query($sql);
 &nbsp; &nbsp;for ($i=0; $row = mysql_fetch_array($result); $i++) {
 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i] = $row;

 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][href] = "./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=$bo_table&wr_id=$row[wr_id]";

 &nbsp; &nbsp; &nbsp; &nbsp;// 코멘트 카운트
 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][commentcnt] = "";
 &nbsp; &nbsp; &nbsp; &nbsp;if ($row[wr_commentcnt] > 0) {
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][commentcnt] = "($row[wr_commentcnt])";
 &nbsp; &nbsp; &nbsp; &nbsp;}

 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][name] = gblayer($row[mb_id], cut_str($row[wr_name],10), $row[wr_email], $row[wr_homepage], $row[mb_open]);
 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][subject] = conv_subject($row[wr_subject], $len,"…");
 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][content] = get_text($row[wr_content]);
 &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][date] = substr($row[wr_datetime],2,8);
$wr_id = $row[wr_id];

 &nbsp; &nbsp; &nbsp; if ($bo[bo_use_category]) { &nbsp; //카테고리가 있다면
&nbsp; &nbsp;$show_category_begin = "";
$show_category_end = "";
} else { &nbsp; &nbsp; &nbsp;//카테고리가 없다면
$show_category_begin = "<!--";
$show_category_end &nbsp; = "-->";
}

$list[$i][ca_name] = $wr_id = ""; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // 분류를 뽑을 때 사용
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ($row[wr_id]) {
 &nbsp; &nbsp; &nbsp; &nbsp; $sql1 = " select ca_name from {$table}_cat where ca_id = '$row[ca_id]'";
 &nbsp; &nbsp; &nbsp; &nbsp; $row1 = sql_fetch($sql1);
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ($row1[ca_name])
 &nbsp; &nbsp; &nbsp; &nbsp; $list[$i][ca_name] = "[$row1[ca_name]]";
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}

$list[$i][icon_new] = "";
 &nbsp; &nbsp; &nbsp; &nbsp;if ($row[wr_datetime] >= date("Y-m-d H:i:s", time() - $bo[bo_new] * 3600)) {
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$list[$i][icon_new] = "<img src='$latest_skin/icon_new.gif' align=absmiddle> ";
 &nbsp; &nbsp; &nbsp; &nbsp;}

$list[$i][reply] = "";
if (strlen($row[wr_reply]) > 0) {
for ($k=0; $k<strlen($row[wr_reply]); $k++) {
$list[$i][reply] .= " &nbsp;&nbsp; ";
}
}

$list[$i][icon_reply] = "";
if ($list[$i][reply]) {
&nbsp; &nbsp;$list[$i][icon_reply] = "<img src='$latest_skin/icon_reply.gif' align='absmiddle'>";
}

for ($k=1; $k<=$cfg[file_count]; $k++) {
if (@preg_match($cfg[image_extension], $row["wr_file".$k])) {
&nbsp; &nbsp; &nbsp; &nbsp;$list[$i]["file_image".$k] = "./data/file/$bo_table/" . $row["wr_file".$k];
&nbsp; &nbsp;}
}

 &nbsp; &nbsp; &nbsp; &nbsp;for ($k=1; $k<=$cfg[link_count]; $k++) {
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ($row["wr_link".$k]) {
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$link[$i]["link".$k] = set_http(get_text(cut_str($row["wr_link".$k], 255)));
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$link[$i]["link_href".$k] = "./?doc=$cfg[bbs_dir]/gblink.php&$qstr&wr_id=$row[wr_id]&index=$k";
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}
 &nbsp; &nbsp; &nbsp; &nbsp;}
 &nbsp; &nbsp;}
 &nbsp; &nbsp;mysql_free_result($result);
 &nbsp; &nbsp;
 &nbsp; &nbsp;include "$latest_skin/latest.skin.php";

 &nbsp; &nbsp;$latest_skin = $tmp_latest_skin;
}
?>





/**********************************************************************
* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [bbs/skin/basic/latest.skin.php]소스입니다..... &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*
**********************************************************************/


<table width=99% cellpadding=0 cellspacing=1>
<tr><td colspan=2 height=1 background='./<?=$cfg[bbs_dir]?>/line.gif'></td></tr>
<tr class='subject subjectbg ht'><td colspan=2 align=center><a href='<?="./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=$bo_table"?>'><?=$bo_subject?></a></td></tr>
<tr><td colspan=2 height=1 background='./<?=$cfg[bbs_dir]?>/line.gif'></td></tr>

<? for ($i=0; $i<count($list); $i++) { ?>
<tr height=22>
 &nbsp; &nbsp;<td><?=$show_category_begin?><?=$list[$i][ca_name]?><?=$show_category_end?><?=$list[$i][reply]?><?=$list[$i][icon_reply]?><?=$list[$i][icon_new]?><a href='<?="./?doc=$cfg[bbs_dir]/gnuboard.php&bo_table=$bo_table&wr_id={$list[$i][wr_id]}"?>'><?=$list[$i][subject]?></a> <?=$list[$i][commentcnt]?></td>
 &nbsp; &nbsp;<td width=70 align=center><?=$list[$i][name]?></td>
</tr>
<? } ?>

<? if (count($list) == 0) { echo "<tr><td colspan=3 align=center height=50>자료가 없습니다.</td></tr>"; } ?>
</table>
추천
0
  • 복사

댓글 전체

우리아빠님//2.63버전에는 아마도 어려울듯 싶네요..... 그 이유는 출력의 구조가 많이 바뀌었어요.....*^^*
대신 위의 소스와 구버전을 비교하시면 해답이 있을 것입니다....*^^*
© SIRSOFT
현재 페이지 제일 처음으로