제목 : 프리첼이나 다음처럼 하위메뉴에 새글이나 새 코멘트 뜨면 상위 메뉴에 NEW 랑 코멘트 표시 달아주기 (04년 증보판)
저번에도 한번 "새 글이나, 새 코멘트 올라오면 구분해서 상위 메뉴에 new icon 붙이기 " 라는 제목으로
글을 올렸었는데.. (아래 링크 참조) 문제가 있는 듯 해서.. 계속 수정 하고 수정 하고.. 하다가 나온 결과물 입니다.
현제 nzeo 에 올라온 비슷한 팁들을 몽땅 참고 했다고 보면 될겁니다.
뭐 제가 보기에.. 더 깔끔해 지고 각종 버그도 잡았습니다. 그리고 더 간략해 지기도 했구요..
이걸 보시고 누가 테클을 거신다면.. 바로 지우겠습니다.. 원래 공개 할 생각이 없던거라.... .. ..
그럼 잡설은 그만두고.. 본론으로 들어가겠습니다.
먼저 작업 순서를 정리해 보겠습니다.
1번. new.php 라는 파일을 만들어 제로보드 경로에 넣어둔다.
2번. new 아이콘이 들어갈 파일 상단에 <? include $_zb_path."new.php"; ?> 를 넣어준다.
3번. new 아이콘이 들어갈 자리에 <? show_new(list_new(pds)); ?> 코멘트 아이콘이 들어갈 자리에 <? show_com(list_new(pds)); ?> 를 넣어준다.
4번. 하위메뉴의 새글과 코멘트를 붙이고 싶다면, <? show_new(list_new(photo_best)|list_new(photo_essay)|list_com(photo_guest)|list_new(photo_guest));?>
이런식으로 붙인다.
작업 순서별 세부사항입니다.
1번. new.php 라는 파일을 만들어 제로보드 경로에 넣어둔다.
----------------------------------------------------------------------------------------------------
<?
function list_new($id)
{
$result=mysql_query("select * from zetyx_board_$id order by no desc limit 1");
$data=mysql_fetch_array($result);
$check_time=(time()-$data[reg_date])/60/60;
if($check_time>48) {
return false;
}
else {
return true;
}
}
function list_com($zb_id)
{
global $connect, $t_board, $t_comment;
$com_result=mysql_fetch_array(mysql_query("select reg_date from $t_comment"."_".$zb_id." order by reg_date desc limit 1", $connect));
$com_reg_time = (time()-$com_result[reg_date])/60/60;
if($com_reg_time>48) {
return false;
}
else {
return true;
}
}
function show_com($IconStatus) {
if($IconStatus) {
$comment_new.="<font face='Tahoma' size='2' color=white><b>*</b></font>";
echo $comment_new;
}
else {
echo "";
}
}
function show_new($IconStatus) {
if($IconStatus) {
$new.="<font face='Tahoma' size='1' color=white><b>NEW</b></font>";
//echo "".stripslashes($new)."";
echo $new;
}
else {
echo "";
}
}
?>
----------------------------------------------------------------------------------------------------
2번. new 아이콘이 들어갈 파일 상단에 <? include $_zb_path."new.php"; ?> 를 넣어준다.
----------------------------------------------------------------------------------------------------
<? include $_zb_path."new.php"; ?>
위에처럼 넣어도 되고..
<?
$_zb_url = "http://제로보드경로/";
$_zb_path = "/절대경로/";
include $_zb_path."outlogin.php";
include $_zb_path."new.php"; <--------- 이부분 추가~!
?>
위에처럼 넣어도 됩니다.
----------------------------------------------------------------------------------------------------
3번. 4번, new 아이콘이 들어갈 자리에 , 코멘트 아이콘이 들어갈 자리에 함수를 넣어준다.
4번. 하위메뉴의 새글과 코멘트를 붙이고 싶다면,
----------------------------------------------------------------------------------------------------
<? show_new(list_new(pds)); ?> : 새글표시를 달고 싶은곳에 넣어주면 됩니다. (pds)는 게시판명
<? show_com(list_com(pds)); ?> : 새코멘트 표시를 달고 싶은곳에 넣어주면 됩니다. 역시 (pds)는 게시판명
<? show_new(list_new(photo_best)|list_new(photo_essay)|list_com(photo_guest)|list_new(photo_guest));?>
위에는 여러게시판(하위 게시판)의 새글과 새코멘트를 상위메뉴에 표시해 주는 부분입니다.
----------------------------------------------------------------------------------------------------
팁. 위에 표시방법의 예..
----------------------------------------------------------------------------------------------------
<tr>
<td width="110">
<a href="../inc/gal.php" onfocus='this.blur()'><img src="../img/gallery.gif" width="70" height="20" border="0" align="absmiddle">
<? show_new(list_new(photo_best)|list_new(photo_essay)|list_new(photo_person)|list_new(photo_landscape)|list_new(photo_ecology)|list_new(photo_approach)|list_new(photo_smile)|list_new(photo_etc)|list_new(photo_guest));?><? show_com(list_com(photo_best)|list_com(photo_essay)|list_com(photo_person)|list_com(photo_landscape)|list_com(photo_ecology)|list_com(photo_approach)|list_com(photo_smile)|list_com(photo_etc)|list_com(photo_guest));?></a>
</td>
</tr>
<tr>
<td width="110">
<img src="../img/blank.gif" width="70" height="2" border="0">
</td>
</tr>
<tr>
<td width="110">
<a href="../zb/zboard.php?id=write" onfocus='this.blur()'><img src="../img/letter.gif" width="70" height="20" border="0" align="absmiddle"> <? show_new(list_new(write)); ?><? show_com(list_com(write)); ?></a>
</td>
</tr>
----------------------------------------------------------------------------------------------------
참고로.... 테스트 페이지는 없고, 제 홈( http://alsmini.net ) 에 적용시켜 뒀습니다. 무분별한 테스트는 삼가해 주시길..
흠..... 올리고 보니까..... 바가지님이 전에 제 소스를 수정해서 올리셨네요.... .. 그래도 걍 올릴랍니다.
참.... 질문 사절 입니다~~~~~~~~ 뭐 질문 할 것도 없을거에요~~~ 그럼 이만........
출처 : http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=상위&select_arrange=headnum&desc=asc&no=5251