제로보드4는 공식적으로 더 이상 개발되지도 배포되지도 않습니다.
제로보드4를 사용하기 위한 팁보다 제로보드4를 안전하고 무사히 다른 툴로 이전하는 팁들을 게재해주시면 감사하겠습니다.
시간이 오래 지난 만큼 오래된 프로그램은 보안 및 사용성에 있어 문제가 많으니 이해 바랍니다.

이방법도 도배와 관련된 문제로 고민하다가 꼼수를 부려본 것이며
기본으로 최근게시물에서 비밀글이 나오지 않는 문제를 악용하여
도배행위를 하면서 비밀글로 해버리더군요. 흐미(뛰는*위에 나는* 있더군요ㅠㅠ)

이럴경우 게시판이 몇개만 있는경우 관리자는 확인이 쉽지만
게시판수가 많거나 바쁜경우? 일일이 확인이 어렵더군요.

이방법은 최근게시물에서 비밀글을 출력하는 방법이며 비슷한 방법이
이미 올라와 있는 내용이며 약간 꼼수를 부려서 비밀글일 경우 링크를 없애고
안내 메세지만 나오게 한겁니다.^^

이렇게 하고나니 최근게시물의 리스트만 봐도 비밀글을 전부 출력해주니 상당히 편리 하더군요.


[수정방법]

제로보드/outlogin.php 의 내용중 아래의 소스줄을

$result = mysql_query("select * from $t_board"."_$id where is_secret=0 order by no desc limit $num", $connect) or die(mysql_error());

where is_secret=0  ☜ 이걸 지워 버립니다.
(이렇게하면 비밀글이고 뭐고 상관없이 no를 기준으로 최근리스트를 원하는 갯수로 전부 출력해 버립니다.)

아래처럼 되겠죠?

$result = mysql_query("select * from $t_board"."_$id order by no desc limit $num", $connect) or die(mysql_error());

이렇게 수정한후 아래로 조금 내려가면 아래의 소스줄이 나옵니다.
아래의 소스줄을 일단 주석처리를 해주세요.

//$main = str_replace("[subject]","<a href='".$_zb_url.$target."&no=$data[no]'>".$subject."</a>",$main);

위의 소스줄 바로위에 아래의 소스를 추가합니다.

if($data[is_secret]=="1"){        
$subjectc ="<a onclick="alert('안내: 이글은 비밀글 이므로 보안상 직접 들어가실 수가 없습니다.')" style="cursor:hand">";
}else{
$subjectc ="<a href='".$_zb_url.$target."&no=$data[no]'+ '+ '>";
}
$main = str_replace("[subject]","$subjectc".$subject."</a>",$main);

//$main = str_replace("[subject]","<a href='".$_zb_url.$target."&no=$data[no]'>".$subject."</a>",$main);


이렇게하면 최근게시물에서 비밀글, 공지.답글 모두 출력이 되면서
비밀글일 경우 링크에서 안내 메세지만 나오게 됩니다. 또한 클릭하는 순간
이글은 비밀글이구나 라는걸 관리자도 바로 파악이 되고 일석이조의 효과가 있더군요.ㅋ

**********안내: 이글은 비밀글 이므로 보안상 직접 들어가실 수가 없습니다.*********


즉 회원들이 최근게시물 리스트에서 제목을 클릭하여 해당게시물로 들어갈경우
이글은 비밀글입니다 ...라는 메세지가 나오는 불편함이 없어지게 됩니다.^^


[레벨:1]서성복

2005.08.30 17:20:07
*.213.129.196

위에 처럼 해서 최근게시물 제목도 나오고 클릭하면 내용은 볼 수 없도록 하면 좋은데 저는 안됩니다.

먼저 outlogin.php파일을 수정해서 최근게시물을 새창띄우기로 사용중입니다.

$main = str_replace("[subject]","<a href='".$_zb_url.$target."&no=$data[no]'>".$subject."</a>",$main);

그 아래에

$main = str_replace("[subjectB]","<a href='#' onclick=\"window.open('".$_zb_url."view_a.php?id=".$id."&no=$data[no]','','width=500,height=350,toolbars=no,resizable=yes,scrollbars=yes')\">".$subject."</a>",$main);

라는 걸 추가했습니다. view_a.php로 연결되어 있습니다.
view_a.php의 전체 내용

<?
if(!$_view_included) {include "_head.php";}
$data=mysql_fetch_array(mysql_query("select * from $t_board"."_$id where no='$no'"));
$memo = stripslashes($data[memo]);
if($data[use_html]<2) $memo = nl2br($memo);
else $memo = strip_tags($memo);
$filename1 = $data[file_name1];
$filename2 = $data[file_name2];
if(eregi("\.gif|\.jpg",$filename1))$uploadimage1 = "<img src=".$_zb_url.$filename1." border=0><br>"; else $uploadimage1="";
if(eregi("\.gif|\.jpg",$filename2))$uploadimage2 = "<img src=".$_zb_url.$filename2." border=0><br>"; else $uploadimage2="";
$memo = autolink($uploadimage1.$uploadimage2.$memo);
if($data[ismember]) {
$imageBoxPattern = "/\[img\:(.+?)\.(jpg|gif)\,align\=([a-z]){0,}\,width\=([0-9]+)\,height\=([0-9]+)\,vspace\=([0-9]+)\,hspace\=([0-9]+)\,border\=([0-9]+)\]/i";
$memo=preg_replace($imageBoxPattern,"<img src='".$_zb_url."icon/member_image_box/$data[ismember]/\\1.\\2' align='\\3' width='\\4' height='\\5' vspace='\\6' hspace='\\7' border='\\8'>", stripslashes($memo));
}
$subject=stripslashes($data[subject]);
?>
<link rel="stylesheet" href="../dex.css" type="text/css">
<div align=center>
<table align=center cellspacing=0 cellpadding=8 width=480 height=350>
<tr>
<td bgcolor=0066CC align=left colspan=2>
<font color=white><b><?=$subject?></b></font>
</td>
</tr>
<tr>
<td bgcolor=EEEEEE colspan=2>
<br>
<?=$memo?>
</td>
</tr>
<tr>
<td bgcolor=0066CC align=center colspan=2>
<font color=white><a href=# onclick=window.close()>창닫기</a></font>
</td>
</tr>
</table>
</div>

이럴 경우에는 어떻게 해야 최근게시물에 비밀글 제목은 나오고 내용은 볼 수 없게 하나요?
현재 게시판에서는 비밀글 내용을 볼 수 되어 있지만 메인화면 최근게시물에서는 비밀글 제목을 클릭하면 내용이 새창으로 보여집니다.

[레벨:9]헐랭이

2005.08.30 22:55:08
*.83.89.123

서성복// [subjectB] 를 사용하므로 아래처럼 해보세요.


if($data[is_secret]=="1"){
$subjectc ="<a onclick=\"alert('안내: 이글은 비밀글 이므로 보안상 직접 들어가실 수가 없습니다.')\" style=\"cursor:hand\">";
}else{
$subjectc ="<a href='#' onclick=\"window.open('".$_zb_url."view_a.php?id=".$id."&no=$data[no]','','width=500,height=350,toolbars=no,resizable=yes,scrollbars=yes')\">";
}
$main = str_replace("[subjectB]","$subjectc".$subject."</a>",$main);

[레벨:1]서성복

2005.08.31 12:10:00
*.213.129.196

위에 처럼 해 보았는데도 아무런 반응이 없고 똑같이 나타납니다.
$main = str_replace("[subjectB]","<a href='#' onclick=\"window.open('".$_zb_url."view_a.php?id=".$id."&no=$data[no]','','width=500,height=350,toolbars=no,resizable=yes,scrollbars=yes')\">".$subject."</a>",$main);
위에 것을 주석처리하고 바로 위에다 넣었는데도 말입니다.
물론 where is_secret=0 을 삭제하고요. 게시판에서는 비밀글로써 관리자와 작성자만 보게 되어 있는데, 여전히 최근게시물에서는 제목만 클릭하면 내용이 새창으로 보여집니다.

[레벨:6]꺾쇠

2005.04.17 17:48:41
*.168.184.114

흐미ㅣ~
바로 어제 비밀글이 이상하게 나와서 이런 소스가 필요하겠구나 했는데,
금방 나와뿌렸네요
감사히 사용합니다.

[레벨:10]세죠위그이

2005.04.17 22:11:15
*.121.231.102

p*a.cc 사이트에서는 비밀글은 앞에 아이콘을 붙이고, 제목만 출력하더군요.(링크 안하고)

그런 방법도 괜찮은것 같습니다. ^^

[레벨:9]헐랭이

2005.04.17 22:15:55
*.161.154.110

세죠위그이// 가능합니다.^^ 현재 제사이트의 최근게시물에 보시면 그렇게 되어 있어요.
http://avaschool.net/zboard/avatar4.html<- 이링크의 최근게시물에서 질문&답변을 보세요.

소스는 대략 아래처럼 하면 됩니다.

if($data[is_secret]=="1"){
$subjectc ="<a onclick=\"alert('안내: 이글은 비밀글 이므로 보안상 직접 들어가실 수가 없습니다.')\" style=\"cursor:hand\" title=\"이글은 비밀글 입니다.\"> <img src=images/secret_head.gif border=0 align=absmiddle alt='이글은 비밀글 입니다.'> ";;
}else{
$subjectc ="<a href='".$_zb_url.$target."&no=$data[no]'>";
}
profile

[레벨:6]세바스챤_™

2005.04.17 23:21:03
*.222.228.236

헐랭이님 활약이 눈부시네요 +_+

[레벨:9]헐랭이

2005.04.18 01:56:10
*.161.154.110

꺽쇠 // 세바스챤 // 감사합니다.활약 이라고 하시니 부끄럽습니다.^^

[레벨:3]가을풍경

2005.04.19 03:19:19
*.187.92.133

전체 게시판 최근게시물 웹진형태의 리스트페이지가 나오게 할수는 없나요 ?

[레벨:9]헐랭이

2005.04.19 17:31:14
*.83.89.122

가을풍경// 웹진형태에서의 비밀글 출력은 문제가 있지 않을까요? 제목뿐만 아니라 내용을 일정수를 출력하므로 내용을 가져오는 부분에서도 비밀글일 경우에는 내용을 차단하는 변수를 적용해야 할듯 하겠는데요.

[레벨:1]Bonnie Chong

2005.04.22 01:09:39
*.170.36.226

감사합니다. 필요했던 팁인데 ^^

[레벨:6]루비아나

2005.05.26 17:08:05
*.59.235.216

하앗.. 저도 이 팁이 필요했었는데.. 유용한 팁 잘 쓰겠습니다. ^^

[레벨:4]이명우

2006.08.28 05:13:33
*.212.32.56

난 왜 안되지..............아흐

[레벨:2]:소향:

2006.01.17 18:25:33
*.189.124.101

짱 좋아요 ^0^

[레벨:1]최종규

2006.04.08 22:23:31
*.224.249.236

한방에 되는군요~ 감사

[레벨:1]성하종

2006.04.22 02:12:47
*.101.241.25

드디어 최근 게시물도 달고 클릭하면 새창으로 안뜨고 원하는 창으로 뜨게 되었습니다.
감사합니다.. 제로보드 일주일만에 이런 기능 첨 보고 해봤는데..헐..멋집니다..팬 됐어요..

한가지, 최근 게시물을 클릭하면, 정해진 주소만이 아니고 id..머머머가 뜹니다. 이걸 해결할 방법은 없을까요??

-------------------------------

사이트 주소 : http://jkt-tour.com/index.html


톱페이지에 있는 최근게시물을 클릭하면, 연동된 페이지인 http://jkt-tour.com/asa/main_04/qna.htm만 주소창에 나왔으면 하는데, http://jkt-tour.com/asa/main_04/qna.htm?id=qna&no=19까지 죄다 나옵니다..

http://jkt-tour.com/asa/main_04/qna.htm만주소창에 나오게 하는 방법 없는지요??

---------------------

저는 홈피도 그렇지만, 제로보드도 완전 초보에, php는 커녕, html도 제대로 모르는 정말 초짜입니다.
그저 검색해서 따라하라는데로 하고만 있는 사람이지요..^^;;;

[레벨:3]김상혁

2006.09.03 18:06:41
*.117.249.76

다 좋네요... 근데 비밀글 옆에 아이콘을 추가 할수는 없을까요?

[레벨:1]배로똥

2008.02.26 09:37:02
*.144.99.83

Parse error: syntax error, unexpected T_STRING in /home/digo/bbs/outlogin.php on line 252     라는 에러가 뜨는데 왜그런거죠??
똑같이 수정했는데 홈페이지 접속시 에러가 떠요~도와주삼~~

미너기

2008.12.18 21:16:46
*.140.226.101

난 안되네요..... 첫화면에 암것도 안나오는다는.. ㅜ.ㅜ
profile

[레벨:8]JEJU

2009.01.03 12:32:06
*.214.227.225

홈페이지의 게시판이 불안정한 관계로 소스가 병형된 점이 있습니다.
내용을 정리하면
$result = mysql_query("select * from $t_board"."_$id where is_secret=0 order by no desc limit $num", $connect) or die(mysql_error());
위에 내용중 where is_secret=0를 삭제해 버리면 비밀글이 최근게시물에 나타납니다.
정리하면...
$result = mysql_query("select * from $t_board"."_$id order by no desc limit $num", $connect) or die(mysql_error());
위에처럼 되겠죠....
비밀글에 링크를 없애고 안내문을 띄울려면
$main = str_replace("[subject]","<a href='".$_zb_url.$target."&no=$data[no]'>".$subject."</a>",$main);
위에 내용을 찾아서주석처리해 주시고..
//$main = str_replace("[subject]","<a href='".$_zb_url.$target."&no=$data[no]'>".$subject."</a>",$main);
위에 처럼 // <= 슬러시 두개를 쳐주면 주석처리가 되겠죠...^^
그 문장 바로 위에
if($data[is_secret]=="1"){
$subjectc ="<a onclick=\"alert('안내: 이글은 비밀글 이므로 보안상 직접 들어가실 수가 없습니다.')\" style=\"cursor:hand\">";
}else{
$subjectc ="<a href='#' onclick=\"window.open('".$_zb_url."view_a.php?id=".$id."&no=$data[no]','','width=500,height=350,toolbars=no,resizable=yes,scrollbars=yes')\">";
}
$main = str_replace("[subject]","$subjectc".$subject."</a>",$main);
위에 내용을 넣어주면 됩니다....
=======================================
위에 내용도 변형될까 우려하여 txt문서로 위에 내용을 담아서 파일을 첨부합니다...
첨부

이은주

2009.03.05 12:24:19
*.192.31.74

카테고리별 최근게시물을 출력하여 사용하는 곳에서는 에러네요.

utlogin.php파일에서 추가한 부분은 빨간색으로 표시하였습니다.

.
.
(주석부분과 아웃로긴관련부분은 수정한 곳이 없어 생략합니다)
        /*******************************************************
         * 최근목록 보여주기를 위한 함수 지정
         ******************************************************/

         // 최근 글 목록 (일반 게시판 형)
         function print_bbs($skinname, $title, $id, $category, $num=5, $textlen=30, $datetype="Y/m/d") {
                global $_zb_path, $_zb_url, $connect, $t_board, $admin_table;

                if(!$skinname||!$id||!$title) return;

                $str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html");
                if(!$str) {
                        echo "지정하신 $skinname 이라는 최근목록 스킨이 존재하지 않습니다
";
                        return;
                }

                $setup = mysql_fetch_array(mysql_query("select use_alllist from $admin_table where name='$id'"));
                if($setup[use_alllist]) $target = "zboard.php?id=".$id;
                else $target = "view.php?id=".$id;
                
                if($category==0){ $category_mun="";}else{$category_mun=" and category="."$category";}

                $result = mysql_query("select * from $t_board"."_$id where is_secret=0 $category_mun order by no desc limit $num", $connect) or die(mysql_error());


                $tmpStr = explode("[loop]",$str);
                $header = $tmpStr[0];
                $tmpStr2 = explode("[/loop]",$tmpStr[1]);
                $loop = $tmpStr2[0];
                $footer = $tmpStr2[1];
(이하부분도 수정한 부분이 없어 생략합니다)
.
.


사용하실 때는..

기존의 최근목록 불러오기 소스에서
기존의소스 :  print_bbs("스킨이름", "타이틀", "게시판이름", 목록갯수, 글자제한)
수정후소스 : print_bbs("스킨이름", "타이틀", "게시판이름", 카테고리넘버, 목록갯수, 글자제한)

카테고리넘버는... 카테고리 순서대로 1부터 시작됩니다.
카테고리별로 읽고 싶지 않을때에는 카테고리넘버를 0으로 지정해 주시면 됩니다.
또한 설문조사나 겔러리에서는 적용되지 않습니다.

이걸 사용중이었는데요,, 방법이 따로 있는지 알려주시면 감사하겠습니다.

ipre

2009.03.27 01:42:51
*.121.86.103

그대로  해봤는데 에러나네요..;
Parse error: parse error, unexpected T_STRING in /home/hosting_users/jochangjin/www/bbs/outlogin.php on line 243

왜그런건지..;;
List of Articles
번호 제목 글쓴이 날짜 조회 수
3629 일본어 제로보드 41pl2 의 글쓰기,덧글에서 5c문자 관련 문자 깨짐 해소책 [3] [레벨:1]공건두 2005-04-18 2801
3628 관리자페이지에서 파일다운로드 권한설정하기 file [23] [레벨:20]영진 2005-04-18 6374
3627 비밀글은 리스트의 제목에 링크를 없애자.(작성자와 관리자는 나오게) [5] [레벨:9]헐랭이 2005-04-18 5167
3626 최근게시물에 [more], [write] 버튼 나타내기 file [1] [레벨:6]꺾쇠 2005-04-17 3215
» 최근게시물에서 비밀글도 출력하자 (비밀글은 링크없애기) [22] [레벨:9]헐랭이 2005-04-17 5630
3624 글보기에서 랜덤회원소개, 회원등급, 인사말보기, 클릭하면 회원정보 새창으... [1] [레벨:4]김형석 2005-04-17 3587
3623 화면 해상도 보다 큰 이미지 나타내기 (리사이즈 아님) [7] [레벨:1]이창욱 2005-04-16 5116
3622 비회원 글 수정시 비밀번호 먼저 묻기 .... 0.2 [9] [레벨:8]아이쿠 2005-04-16 3185
3621 비밀글 리플 관련 및 아래 비밀답글 관련 문제 추가.... [3] [레벨:8]아이쿠 2005-04-16 7899
3620 비밀글일때 (답글에서) 보안버그 문제의 임시조치 [7] [레벨:9]헐랭이 2005-04-16 8909
3619 기존회원과 신규회원은 특정게시판에 무조건 글하나 남기게 하기 [9] [레벨:9]헐랭이 2005-04-15 10806
3618 글작성후 24시간 전에는 삭제를 못하게 막기 [15] [레벨:9]헐랭이 2005-04-15 4866
3617 코멘트에 잘가져 간다는 인사글 안쓰면 다운로드 못하게 막기^^ [30] [레벨:9]헐랭이 2005-04-14 5933
3616 내 홈페이지에 카운터를 달기 [11] [레벨:1]엘쓰리팸 2005-04-14 23211
3615 비밀글에서 수신자를 지정할 수 있도록 개선 [6] [레벨:1]장아산 2005-04-14 11137
3614 홈페이지에 뉴스 서비스를 하세요 [9] [레벨:1]박스 2005-04-13 5778
3613 서브 레이어 사용안할 때 작성자 이름 누르면 아웃룩대신 쪽지보내기 창 띄우기 [2] [레벨:1]레인 2005-04-12 3577
3612 pl7 변경 관련, zetyx_board_id의 password 길이 한번에 바꾸기 [13] [레벨:6]아가페 2005-04-11 13605
3611 제로보드에 웹에디터를 달자. (FCKeditor 2.0 RC3) file [30] [레벨:2]+_+ 2005-04-11 22127
3610 제로보드에서 폼메일 사용하기 file [47] [레벨:20]영진 2005-04-10 18023