[1원짜리팁] 특정기간이 지난 글에는 댓글금지..! > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

[1원짜리팁] 특정기간이 지난 글에는 댓글금지..! 정보

[1원짜리팁] 특정기간이 지난 글에는 댓글금지..!

본문

중복이 아닐런지 모르겠습니다.
 
커뮤니티를 운영하다보니 포인트에 열을 올리는분들이 좀 계시네요..
그래서 오래된글에 코멘트을 달면서 포인트를 획득하려는 분들도 종종있답니다.
타 커뮤니티를 보니 특정기간이 지난글에는 코멘트를 못달게 해놨더군요..
 
skin/view_comment.skin.php 의
<form>테그의 시작부분 <tr>위쪽에 글을 작성한 날짜값과 현시간의 timestamp값을 가져와
특정기간을 더하여 비교하는 부분을 넣어서 기간내의 글이라면 코멘트쓰기 폼이 나오고
기간내의 글이 아니라면 코멘트쓰기폼을 없애도록 했습니다.
 
--------------------------------------적용되는 분입니다.--------------------------------------------
</td></tr>
<? //코멘트 쓰기 출력시작
 $now_timestamp=time(); //현재시간을 timestamp로 받는다.
 $comment_sql = "select wr_datetime from $write_table where wr_id = '$wr_id' and wr_is_comment = '0'";
    $comment_datetime = sql_fetch($comment_sql);
 $comment[year] = substr($comment_datetime[wr_datetime],0,4); //글쓴 년도를 받는다
 $comment[mon] = substr($comment_datetime[wr_datetime],5,2); //글쓴 월을 받는다
 $comment[day] = substr($comment_datetime[wr_datetime],8,2); //글쓴 날짜를 받는다
 $comment[timestamp] = mktime(23, 59, 59, $comment[mon], $comment[day]+7, $comment[year]);  // 글쓴년월일+7을 timestamp로 받는다.
 if($comment[timestamp] > $now_timestamp){ //글쓴년월일과 현재의 timestamp값을 비교한다.
?>
<!--여기부터가 코멘트쓰기폼시작되는부분--->
<tr><td style='background:#F8F8F9;'>
<span id=comment_write style='display:none;'>
<form name="fviewcomment" method="post" action="./write_comment_update.php" onsubmit="return fviewcomment_submit(this);" autocomplete="off" style="margin:0px;">
.
.
.
.
.
.
</form>
</span>   
  </td>
</tr>
<!--여기까지가 코멘트쓰기폼끝나는 부분--->
<?}else{ // 코멘트 쓰기 출력 끝?>
 <tr>
  <td colspan="2" align="center">
   <table width="60%" cellpadding="0" style='border:1px solid #dddddd;background:#F8F8F9;'>
    <tr>
     <td align="center" height="50" style='word-break:break-all;'>
      <font color="red">일주일이 지난 글에는 댓글 금지!</font>
     </td>
    </tr>
   </table>  
  </td>
 </tr>
<?}?>
 
여기까지 처리해주시면 폼은 안나오게 되는데 아래쪽의 스크립트에서 글쓰기폼을 체크합니다 때문에 스크립트 오류가 나구요.. 때문에 아래와 같이 스크립트 출력부분에 한번더 if문을 걸어줍니다.
<? if($coment[timestamp] > $now_timestamp){ //글쓴년월일과 현재의 timestamp값을 비교한다.?>
<script language='JavaScript'>
.
.
.
</script>
<?}?>
 
* 리스트페이지에서 코멘트 새창시 $view변수값을 가져오지 못함으로 중간에 쿼리하나 더 들어갔습니다.
추천
5

댓글 6개

문제가 있습니다. 코멘트만새창띄우기 봤을때는 $view값이 없음으로 if값이 false만 나온답니다.
때문에 코멘트페이지 안에서 새로 쿼리를 날려 날짜값을 읽어와야 할듯합니다..
수정하였습니다.!
전체 20 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT