여분필드의 값으로 구분하여 댓글 작성횟수 제한 하고 싶어요...ㅠ.ㅠ
본문
현재 각 게시글에 임의의 고유코드를 여분필드 wr_1에 넣었습니다.
예를 들어 A, B, C 글의 여분필드 wr_1에 HB03이라는 임의코드를 부여했습니다.
이 임의코드가 같은 글에 댓글을 하나만 달 수 있게 제한하고 싶습니다.
다시말해 임의코드가 같은 A글에 댓글을 달면 B, C글에는 댓글을 달 수 없게요.
물론 임의코드가 다른 D, E, F에는 댓글을 쓸 수 있고요.
아래 조건문으로 해봤는데 안되네요...ㅠ.ㅠ
if ($wr_1 == 'HB03') 를 if ($wr_1) 이렇게 바꿔서 하면 wr_1에 값이 있으면 댓글을 하나만 달 수 있고
wr_1에 값이 없을 때는 댓글 작성이 가능합니다.
그런데 각 게시글마다 임의코드를 부여해 구분을 하고 싶은데...값의 유무만 적용이 되네요...ㅠ.ㅠ
도움 부탁드립니다.
write_comment_update.skin.php
if ($wr_1 == 'HB03') {
$mb_id = $member['mb_id'];
$sql = " select count(*) as cnt from {$write_table} where wr_is_comment = '1' and mb_id = '{$mb_id}' ";
$row = sql_fetch($sql);
if ($row['cnt'] > "1" ) {
sql_query($sql2); //작성한 댓글 삭제
sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row['wr_last']}' where wr_id = '{$write['wr_parent']}' ");
alert('동일 종류의 글에는 1개 댓글만 쓰실 수 있습니다.');
exit;
}
}
답변 3
댓글 저장시에도, 댓글의 wr_1 코드에 부모글의 임의코드를 저장하는 것이 적절해 보입니다.
write_comment_update.head.skin.php 파일은 댓글 DB 저장전 수행되는 파일입니다.
* write_comment_update.head.skin.php
$wr = get_write($write_table, $wr_id);
$parent_wr_1 = $wr['wr_1'];
if ($parent_wr_1) {
$mb_id = $member['mb_id'];
$sql = "
select count(*) as cnt
from {$write_table}
where wr_is_comment = 1
and mb_id = '{$mb_id}'
and wr_1 = {$parent_wr_1}
";
$row = sql_fetch($sql);
if ($row['cnt'] > 1 )
alert('동일 종류의 글에는 1개 댓글만 쓰실 수 있습니다.');
}
$wr_1 = $parent_wr_1;
view_comment.skin.php 화일 상단에 넣으세요
$row=sql_fetch("select count(*) as cnt from $write_table where wr_comment !=0 and wr_1 = {$view['wr_1']} ");
if($row['cnt']) $comm_write= 0; else $comm_write =1;
하단 자바스크립트에서
function fviewcomment_submit(f)
{
if( $('#w').val()=='c' && <?php echo $comm_write;?>!=1) { alert('이미 답변이 등록 되었습니다'); return false; } //<------------- 추가
이미 댓글이 있으면 등록 할 수 없습니다
댓글이 달린 게시물은 댓글 수정이 되어야 하니 입력창은 있어야합니다
그런데 조금더 궁리하면
더 이상 댓글을 달 수없고 댓글도 없는 게시물은 댓글 입력창 자체를 안보이게 할 수 있습니다
($is_comment_write 값을 설정하여)
이 임의코드가 같은 글에 댓글을 하나만 달 수 있게 제한하고 싶습니다...
==
게시물에 하나인가요, 회원당 하나인가요?