비회원 글작성시, 댓글에 [작성자]표시 방법
본문
네이버 카페가 저런식으로 되어 있던데
댓글 목록에서 닉네임 옆에 (작성자) 임을 표시해주는 방법입니다.
게시판 스킨 폴더 view_comment.skin.php 파일 수정
댓글 출력 부분에서
<?php echo $list[$i]['name'] ?>
여기를 이렇게 수정
<?php echo $list[$i]['name'] ?><?php if ($list[$i]['mb_id'] == $write['mb_id']) { ?> <span style="color:#ff6600">(작성자)</span><?php } ?>
모양은 원하는대로 변경하면 되고 체크만 이렇게 하면 됩니다.
<?php if ($list[$i]['mb_id'] == $write['mb_id']) { ?>작성자임을 표시<?php } ?>
===========> 이대로 하면 회원은 가능한데
비회원도 글작성시, 저렇게 [작성자표시]가 되게 하려면 어떻게 하면 될까요~???
구글링해보니
<?php if ($list[$i]['mb_id'] == $write['mb_id']) { ?>
여기를 이렇게 변경
<?php if ($write['mb_id'] && $list[$i]['mb_id'] == $write['mb_id']) { ?>
라고 나와있는데, 이렇게 해도 전혀 안먹히네요
혹시 어디를 수정하면 될까요~??
답변 4
비회원은 작성자인지 알 수가 없습니다.
그나마 아이피로 체크를 해볼수는 있을텐데 아이피가 다른곳에서 쓴다면 해당도 정확하지는 않고요.
비회원을 정확하게 할려면 비회원이 글쓸때 원본글 비밀번호를 적게 하거나 해서 본인이라는걸 따로 인식 할 수 있게 따로 작업을 하셔야 할거 같습니다.
스팸 방어를 위해서라도 그냥 회원전용으로 처리하시는 게 좋을 듯.
그럼 , 본문 질문 같은 고민을 하실 필요도 없으실테고...ㅎ
비회원은 회원아이디가 존재하지 않습니다.
그러므로 mb_id가 존재하질 않습니다.
그리고 작성자를 정확히 기입은 어렵고 별도로 기입하도록 처리해서 표기해야 하는 부분입니다.
윗분들의 답변처럼 보안상에 문제점이 발생할 수 있습니다.
꼭 구현을 하고자 하신다면 다음과 같이 해 볼 수 있을 것 같습니다.
<?php
if ($comment['mb_id'] == $write['mb_id']) {
$authorLabel = '(작성자)';
} else {
$authorLabel = '';
}
?>
<?php echo $comment['name'] . $authorLabel; ?>
현재 댓글이 회원의 것인지를 확인하고, 회원인 경우 $authorLabel 변수에 "(작성자)" 문자열을 할당합니다. 비회원인 경우에는 $authorLabel 변수를 빈 문자열로 남깁니다. 그런 다음 $comment['name']과 $authorLabel을 문자열 연결하여 출력합니다.
이렇게 하면 회원일 때와 비회원일 때 모두 작성자 이름 뒤에 "(작성자)"를 출력할 수 있습니다.
참고하셔서 원하시는 형태로 구현하시면 될 듯 합니다.
!-->