-오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 이곳에 옮겨 놓습니다.
아마도 이런 팁들을 많이 봐서 이제는 지칠대로 지쳤으리라 생각이 됩니다만..
이번 버젼은 게시판이 생성이 될떄마다 write_ok.php 파일에 추가를 하는 버젼이 아니라
게시판 관리자 모드에서 기입을 하여 수정하는 방식이므로 그러한 수고가 덜어지는 종합 버젼이라고 생각하시면 됩니다.
하지만 이전의 파일 수정 버젼은 한두개의 파일만 고치면 됐지만
지금의 버젼은 좀(??) 많은 파일을 수정해야 하기 떄문에 잘 생각해보고 하시기 바랍니다.
아래는 편의상 경어를 생략하니 알아서 봐주시기 바랍니다.
1 . DB에 추가하기.
zetyx_admin_table 에 write_point,comment_point 라는 두개의 필드를 추가한다.
추가시 각각 int(11)정도로 하면 무리가 없다. 물론 디폴트값은 각각 1이다.
디비에 필드를 추가할줄 모르는 사람은 좀더 도(??)를 딱고 와서 보기 바란다.
2. 게시판 관리자 모드 수정하기
관련 파일 : admin/admin_modify_board.php
<tr height=25 bgcolor=#e0e0e0>
<td align=right style=font-family:Tahoma;font-size:8pt;>최고 업로드 가능 용량 </td>
<td >
<input type=text name=max_upload_size value="<?=$data[max_upload_size]?>" size=10 class=input style=border-color:#b0b0b0> byte (최고한도 : <?echo get_cfg_var("upload_max_filesize"); ?> byte)
</td>
</tr>
<tr height=25 bgcolor=#e0e0e0>
<td align=right style=font-family:Tahoma;font-size:8pt;>글쓴수에 따른 제니 </td>
<td >
<input type=text name=write_point value="<?=$data[write_point]?>" size=10 class=input style=border-color:#b0b0b0> Zeny
</td>
</tr>
<tr height=25 bgcolor=#e0e0e0>
<td align=right style=font-family:Tahoma;font-size:8pt;>코멘트에 따른 제니 </td>
<td >
<input type=text name=comment_point value="<?=$data[comment_point]?>" size=10 class=input style=border-color:#b0b0b0> Zeny
</td>
</tr>
<? if($data[use_cart]) $check="checked"; else $check=""; ?>
<tr height=25 bgcolor=#e0e0e0>
<td align=right style=font-family:Tahoma;font-size:8pt;>바구니 기능 </td>
<td >
<input type=checkbox name=use_cart value='1' <?echo $check;?>>
바구니 기능 사용
</td>
</tr>
빨간 색으로 된 부분을 원하는 자리에 넣으면 된다..필자의 경우 NZEO라그나로크 팬사이트의 웹마스터로서 부득이 하게 ZENY라는 돈표시를 하였으나 각자 원하는 단위를 사용하면 될듯..
관련 파일 : admin/admin_exec_board.php
@mysql_query("update $admin_table set
only_board='$only_board',skinname='$skinname',header='$header',footer='$footer',header_url='$header_url',footer_url='$footer_url',
bg_image='$bg_image',bg_color='$bg_color',table_width='$table_width',memo_num='$memo_num', page_num='$page_num', cut_length='$cut_length', use_category='$use_category', use_html='$use_html',max_upload_size='$max_upload_size',
use_filter='$use_filter',use_status='$use_status',use_pds='$use_pds',use_homelink='$use_homelink',
title='$title',pds_ext1='$pds_ext1',pds_ext2='$pds_ext2',write_point='$write_point',comment_point='$comment_point',
use_filelink='$use_filelink',use_cart='$use_cart',use_autolink='$use_autolink',use_showip='$use_showip',
use_comment='$use_comment',use_formmail='$use_formmail',use_showreply='$use_showreply', use_secret='$use_secret', filter='$filter', avoid_tag='$avoid_tag', avoid_ip='$avoid_ip', use_alllist='$use_alllist' where no='$no'") or Error("게시판의 기능설정 변경시 에러가 발생하였습니다");
movepage("$PHP_SELF?group_no=$group_no&exec=view_board&no=$no&exec2=modify&page=$page&page_num=$s_page_num");
}
게시판 수정부분에서 빨간 부분만을 추가하면 사용할수 있는 준비가 모두끝이다.
3. 모든 게시판에 적용되게 수정하기
관련 파일 : _head.php
위의 수정을 다 하였다면 모든 게시판에 적용이 될수 있도록 하기 위한 준비를 해야 한다.
// 게시판의 가로크기 설정
$width=$setup[table_width];
// 각각의 글쓴수에 따른 점수 설정 by 유메
$write_point=$setup[write_point];
$comment_point=$setup[comment_point];
// 카테고리 읽어오기
위의 빨간 글씨부분도 어느 부분에 넣던지 상관없으니 알아서 넣으면 된다..
4. 글쓸때 포인트 주기
관련 파일 : write_ok.php
// 회원일 경우 해당 해원의 점수 주기
if($mode=="write"||$mode=="reply") @mysql_query("update $member_table set point1=point1+$write_point where no='$member[no]'",$connect) or error(mysql_error());
5. 코멘트쓸때 포인트 주기
관련 파일 : comment_ok.php
// 회원일 경우 해당 해원의 점수 주기
@mysql_query("update $member_table set point2=point2+$comment_point where no='$member[no]'",$connect) or error(mysql_error());
6. 글 삭제시 점수 빼기
관련 파일 : delete_ok.php , del_comment_ok.php
delete_ok.php 에는 _head.php 파일을 인크루드 하지 않기 때문에 상단에 다시한번 아래의 구문을 넣어주어야 한다. 그렇지 않으면 점수를 빼지 않는 경우가 발생한다,
// 각각의 글쓴수에 따른 점수 설정 by 유메
$write_point=$setup[write_point];
$comment_point=$setup[comment_point];
나머지는 상단의 경우에서 "+" 를 "-" 로 고쳐주면 된다.
아직까지 이 긴글을 읽어준 모든 분께 감사를 드립니다.
<a href="http://www.elstorm.com/blog/" target=_blank ><b>이엘스톰에서 퍼감</b></a><BR/>
답글삭제