묻고답하기
한 게시물에 1회 댓글 등록 제한하기
2013.02.25 16:15
송동우님의
한 게시판에서
한번만 게시물 등록할 수 있는 팁이 있더군요.
<block cond="$mid=='특정mid명'">
{@
$oDB = &DB::getInstance();
$query = $oDB->_query('select count(*) as total from xe_documents where module_srl = '.$module_info->module_srl.' and user_id = "'.$logged_info->user_id.'"');
$result = $oDB->_fetch($query);
}
<script type="text/javascript" cond="$result->total>0">
alert("warning message here");
history.go(-1);
</script>
</block>
이걸 어떻게든 변형해서
한 게시물에 한 아이디가 한번의 댓글만 달 수 있게 변형하고 싶은데...
쉽게 안됩니다.
팁을 좀 알려 주셨으면 합니다.
댓글 4
-
sejin7940
2013.02.25 16:58
-
ForHanbi
2013.02.25 17:08
감사합니다. 첫번째 댓글만 필요해서 위 소스로만 테스트 했습니다. 정확하게 숫자를 뽑아내더군요. 세진님 너무 감사합니다. 이거잡고 종일을 ㅠ.ㅠ -
SUHONE
2015.01.12 03:19
세진님 안녕하세요.
저 또한 특정 게시판에 댓글을 한번만 달수 있도록 할려고 해요.
그러면서 해당 게시판에 포인트도 한번만 제공하게 되는형식인데요.
위 댓글을 보고 해당 게시판 스킨 _comment.html , comment.html , _comment_write.html 에
전부 위 소스...
<block cond="$mid=='특정mid명'">
{@
$oDB = &DB::getInstance();
$query_comment = $oDB->_query('select count(*) as total from xe_comments where document_srl = '.$oDocument->document_srl.' and user_id = "'.$logged_info->user_id.'"');
$result_comment = $oDB->_fetch($query_comment);
}<script type="text/javascript" cond="$result_comment->total>0">
alert("warning message here");
history.go(-1);
</script>
</block>을 첨부해봤는데요. 안되요. ㅠ.ㅠ.
특정mid명 에는 게시판 모듈 이름이 들어가는거 아닌가요?
-
sejin7940
2015.01.12 05:11
제가 해당 소스를 확인하고 답변달았던건 아니여서.. mid 에는 게시판 모듈이름 이 맞아요.
아니면 https://www.xpressengine.com/index.php?mid=download&package_id=19923002 자료를 써보셔도 되고요
저 팁이 게시판 스킨의 write 페이지를 고친거죠?
그러면, 스킨내부의 댓글쓰기창 쪽에서..
(보통 첫번째 댓글 쓰는 곳은.. comment.html 이라든지 view_document.html 이나 read.html 등에 있을겁닏)
<block cond="$mid=='특정mid명'">
{@
$oDB = &DB::getInstance();
$query_comment = $oDB->_query('select count(*) as total from xe_comments where document_srl = '.$oDocument->document_srl.' and user_id = "'.$logged_info->user_id.'"');
$result_comment = $oDB->_fetch($query_comment);
}
<script type="text/javascript" cond="$result_comment->total>0">
alert("warning message here");
history.go(-1);
</script>
</block>
로 처리하면 아마도 될껄요? (확인은 안 해봤습니다)
다만 이런 형태로는 댓글에서만 제어가 되고..
대댓글 부분을 제어하려면 이건 또 별개로 처리해야할겁니다.
대댓글쪽도 같이 막고프면
보통 comment_form.html 같은 파일이 따로 있는데..
<block cond="$mid=='특정mid명'">
{@
$oDB = &DB::getInstance();
$query_recomment = $oDB->_query('select count(*) as total from xe_comments where document_srl = '.$oComment->get('document_srl').' and user_id = "'.$logged_info->user_id.'"');
$result_recomment = $oDB->_fetch($query_recomment);
}
<script type="text/javascript" cond="$result_recomment->total>0">
alert("warning message here");
history.go(-1);
</script>
</block>
형식으로 스킨을 고치면 될거라고 예상합니다. (실제 소스를 넣어보고 답을 쓰는건 아니여서 ^^;;;;)