나의 최신글스킨 질문입니다. 정보
나의 최신글스킨 질문입니다.본문
http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=44287
스킨을 사용중인데 작동은 매우 잘 되고있는데
남이 쓴글에 내가 댓글을 달았을경우에도 나의 최근게시물에 같이 포함이 됩니다.
내가 쓴글만 출력이 되게 하려면 어디를 수정해야 할까요??
그리고..
내글에 달린 최근코멘트를 표시하게 하려면 어덯게 해야 할까요??(내 글에 다른사람이 코멘트를 달았을때..ㅇㅇ)
질문이 너무 많나요..ㅎㅎ(아래는 스킨소스입니다.)
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
/////////////////////////////////////////////////////////////////////
// 나의 최근게시물
//쿼리수정 및 페이징 처리변환 2007-02-05 by 헐랭이
/////////////////////////////////////////////////////////////////////
//회원이라면 출력
if ($member[mb_id]) {
//////////////사용자설정///////////////////////
// 이스킨이 위치하는 경로를 넣어 주세요.
$new_my_skin_path ="{$g4[path]}/skin/latest/my_new";
$new_count = 10; //한번에 보여줄 갯수
$page_count = 1; //페이지출력수
$subjc = 24;//제목 글자수
///////////////설정끝//////////////////
?>
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="7" height="7"><img src="<?=$new_my_skin_path?>/img/line_mid_p1.gif"></td>
<td background="<?=$new_my_skin_path?>/img/line_mid_p5.gif"></td>
<td width="7"><img src="<?=$new_my_skin_path?>/img/line_mid_p2.gif"></td>
</tr>
<tr>
<td background="<?=$new_my_skin_path?>/img/line_mid_p8.gif"></td>
<td>
<?
$sql2 = " select count(*) as cnt from $g4[board_new_table]
where wr_id = wr_parent and mb_id = '$member[mb_id]' ";
$row2 = sql_fetch($sql2);
$total_count = number_format($row2[cnt]);
$rows = $page_count;
$total_page = ceil($total_count / $rows);
if (!$scpage) { $scpage = 1; }
$from_record = ($scpage - 1) * $rows;
$sql = " select bo_table, wr_id, wr_parent from $g4[board_new_table] a
where mb_id = '$member[mb_id]'
-- and a.wr_id = a.wr_parent
group by bo_table, wr_parent
order by bn_id desc limit $from_record, $new_count ";
$res = sql_query($sql);
echo "<table width=95% cellpadding=0 cellspacing=0 align=center>";
echo "<tr height=25><td><img src='$new_my_skin_path/img/list_icon.gif'> <span style='color:#333333;'><b>나의 최근게시물</b></span></td></tr><tr><td height=1 bgcolor=#FF9900></td></tr>";
$list = array();
for ($i=0; $row=sql_fetch_array($res), $i<$new_count; $i++)
{
if (!$row[bo_table])
{
continue;
}
$tmp_table = $g4[write_prefix].$row[bo_table];
$sql2 = " select wr_subject, wr_comment from $tmp_table where wr_id = '$row[wr_parent]' ";
$row2 = sql_fetch($sql2);
$list[$i] = $row2;
$subj = get_text($list[$i][wr_subject]);
$subj = cut_str($subj, $subjc);
$comment = "";
if ($list[$i][wr_comment])
$comment = "<span class=small>({$list[$i][wr_comment]})</span>";
echo "<tr height=23><td class=bg_menu2 title='$subj'>";
echo "<nobr style='display:block;overflow:hidden;width:160px;'>";
echo "<img src='$new_my_skin_path/img/list_icon2.gif'> <a href='$g4[bbs_path]/board.php?bo_table=$row[bo_table]&wr_id=$row[wr_parent]'>";
echo "<span style='color:#666666;'>$subj $comment</span></a>";
echo "</nobr></td></tr>";
}
if (!$total_count) {
echo "<tr><td><span style='color:gray;'><br>쓴 글이 없습니다.</span></td></tr>";
}else{
echo "<tr><td><span style='color:gray;'>";
$scpage = get_paging($page_count, $scpage, $total_page, "?gr_id=$gr_id&bo_table=$bo_table&scpage=");
echo "</span></td></tr>";
}
echo "</table>\n";
?>
</td>
<td background="<?=$new_my_skin_path?>/img/line_mid_p6.gif"></td>
</tr>
<tr>
<td height="7"><img src="<?=$new_my_skin_path?>/img/line_mid_p4.gif"></td>
<td background="<?=$new_my_skin_path?>/img/line_mid_p7.gif"></td>
<td><img src="<?=$new_my_skin_path?>/img/line_mid_p3.gif"></td>
</tr>
</table>
<?
} else {
echo "로그인을 하셔야 보입니다.";
}
?>
댓글 전체
이부분을 풀면 자신의 원글만 출력됩니다.
그런데 이상하네요 -- 이게 주석으로 먹히나요? 한줄이면 // 아닌가요?
-- 를 빼시고 해보세요
아! sql 문자열로 되서 처리 되나 봅니다.
원글만 제대로 표시되는군여..ㅎㅎ
그런데 내 글에 달린 최근코멘트를 뽑아내는건 어려울까여??ㅎㅎ
코멘트 안달린글은 무시하고 코멘트 달린글만 올라오도록..
불당님의 내글의 반응 을 적용해 보심이 좋을듯 합니다. 필드추가가 좀 있지만
쉽게 구현할 수 있습니다.
지금 상태에서는 for루프내에서 $g4[board_new_table] 에 내글 wr_id 와 wr_parent 같은걸 한번 가져와야 하는데 출력이 좀 어렵네요.
p.s 지금상태로도 운영은 될겁니다. 내글에 댓글이 달리면 보통 최신글에
ㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁ..(1) 이런식으로 댓글카운트가 나오니까 카운트 올라가면 누가
댓글 달았구나 알 수 있습니다. ^^