회원별 한번만 글쓰기 제한하기.. 정보
회원별 한번만 글쓰기 제한하기..본문
특정 게시판에 회원이 딱 한번만 글쓰기, 코멘트가 가능하도록 만들어봤습니다..^^
list.skin.php
== 수 정 ====================
175 원본
<? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border='0'></a><? } ?>
--> 수정
<? if ($write_href) { ?><a href="#" onclick="checkId('<?=$write_href?>','<?=$member[mb_id]?>');return false;"><img src="<?=$board_skin_path?>/img/btn_write.gif" border='0'></a><? } ?>
== 추 가 ====================
233 에 함수 추가
(!!! <? if ($is_checkbox) { ?> 위로 추가 !!!)
<script language="JavaScript">
// 로그인 했는지 확인 (로그인 한 회원만 글쓰기 가능) 추가
function checkId(url,mbId) {
var mbId=mbId;
if(mbId == "") {
alert("로그인 후 글쓰기가 가능합니다.");
return;
} else {
location.href=url;
}
}
</script>
view.skin.php
== 수 정 ====================
29 원본
<? if ($write_href) { echo "<a href=\"$write_href\"><img src='$board_skin_path/img/btn_write.gif' border='0' align='absmiddle'></a> "; } ?>
--> 수정
<? if ($write_href) { echo "<a href=\"#\" onclick=\"checkId('$write_href','$member[mb_id]');return false;\"><img src='$board_skin_path/img/btn_write.gif' border='0' align='absmiddle'></a> "; } ?>
== 추 가 ====================
168 에 함수 추가
<script language="JavaScript">
// 로그인 했는지 확인 (로그인 한 회원만 글쓰기 가능) 추가
function checkId(url,mbId) {
var mbId=mbId;
if(mbId == "") {
alert("로그인 후 글쓰기가 가능합니다.");
return;
} else {
location.href=url;
}
}
</script>
view_comment.skin.php
== 수 정 ====================
82 <!-- 코멘트 입력 --> 위
<? if ($is_comment_write) { ?>
--> 수정
<? if ($is_comment_write && !$commentForbid) { ?>
105~112 주석처리 <!-- 코멘트 입력 --> 부분
<!--
<? if ($is_guest) { ?>
이름 <INPUT type=text maxLength=20 size=10 name="wr_name" itemname="이름" required class=ed>
패스워드 <INPUT type=password maxLength=20 size=10 name="wr_password" itemname="패스워드" required class=ed>
<? if ($is_guest) { ?>
<img id='kcaptcha_image' border='0' width=120 height=60 onclick="imageClick();" style="cursor:pointer;" title="글자가 잘안보이는 경우 클릭하시면 새로운 글자가 나옵니다.">
<input title="왼쪽의 글자를 입력하세요." type="input" name="wr_key" size="10" itemname="자동등록방지" required class=ed>
<?}?>
<? } ?>
-->
== 추 가 ====================
1행 원본
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
--> 추가 후
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if($member[mb_id]) {
$query="select * from $write_table where mb_id='$member[mb_id]' and wr_is_comment=1";
$result=sql_query($query);
$rows=mysql_num_rows($result);
if($rows>0) {
$commentForbid="이 게시판은 1회 댓글만 허용합니다.";
}
}
?>
write.skin.php
== 추 가 ====================
3행에 추가
if($member[mb_id]) {
$query="select * from $write_table where mb_id='$member[mb_id]' ";
$result=sql_query($query);
$rows=mysql_num_rows($result);
if($rows>0) {
alert ("이 게시판은 1회 글씨기만 허용합니다.");
}
}
2
댓글 8개
근데 이거 적용하면 게시물당 한번의 코멘트 인가요?. 게시판당 한개의 코멘트인가요?. 게시물당 한번이면 좋겠는데..
관리자는 가능하도록 하려면.... write부분만 허용해야하는거지요?
write.skin.php
== 추 가 ====================
if ( !$is_admin && $w == '' ) {
$sql = 'SELECT COUNT(*) AS CNT FROM ' . $g4['write_prefix'] . $bo_table . ' WHERE mb_id = \'' . $member[mb_id] . '\'';
$row = sql_fetch($sql);
if ( $row['CNT'] > 0 ) {
alert('이 게시판은 한 사람당 글 한개만 등록 가능합니다. (' . $row['CNT'] . ')');
}
}
저도 몇년 늦게 봤지만, 지금 찾다가 필요했던 팁을 발견했습니다.
view_comment.skin.php 부분만 바꿔도 처리가 되네요. Good!!!!
감사, 감사 합니다. 꾸벅~