비회원 글작성시, 댓글에 [작성자]표시 방법

비회원 글작성시, 댓글에 [작성자]표시 방법

QA

비회원 글작성시, 댓글에 [작성자]표시 방법

본문

 

https://sir.kr/g5_tip/6562

 

네이버 카페가 저런식으로 되어 있던데

댓글 목록에서 닉네임 옆에 (작성자) 임을 표시해주는 방법입니다.

 

게시판 스킨 폴더 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을 문자열 연결하여 출력합니다.

이렇게 하면 회원일 때와 비회원일 때 모두 작성자 이름 뒤에 "(작성자)"를 출력할 수 있습니다.

 

참고하셔서 원하시는 형태로 구현하시면 될 듯 합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 30
QA 내용 검색

회원로그인

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