i

익명게시판에서 글쓴이 구분하기

· 2021-06-29 (화) 14:03:04 · 8023 · 5

1. 익명게시판에서 댓글에 글쓴이 구분이 가능하도록 하는 간단한 코드 입니다.

2. 게시글 테이블의 여분필드 wr_1에 임시ID를 넣어 작성자를 구분하는 방법 입니다.

 

-적용방법-

 

1. 첨부파일 "tmp.mb_id.head.skin.php"을 다운로드 받아 사용하고 있는 테마폴더의 게시판 테마 폴더에 넣어주세요. 예) html/theme/tailwind0.3/skin/board/basic 이 파일이 임시ID를 만들어주는 부분입니다.

833136480_1624941808.3731.png

 

2. 같은 폴더에 있는 "write.skin.php" 를 열어 아래의 코드를 추가해줍니다.

[code]

<?php
if (!defined('_GNUBOARD_')) exit; //파일 최상단에 위치한 이 코드 바로 밑에 3번줄을 추가하세요.
include("tmp.mb_id.head.skin.php");
?>

[/code]

글을 작성할때 임시ID를 만들어 미리 세션에 올려두는 부분입니다.

 

3. 같은 폴더에 있는 "write_update.skin.php" 파일을 열어주세요.

해당 파일이 없는경우 "write_update.skin.php"을 이름으로 하는 파일을 새로 만들어주세요.

해당 파일에 아래의 코드를 넣어주시면 됩니다.  코드는 익명+글쓴이 표시가 포함된 코드 입니다. 글쓴이 구분만 필요한경우 주석부분의 내용만 쓰세요.

 

[code]

<?php
include('tmp.mb_id.head.skin.php');
if ($w === '' || $w === 'r') {
    if($is_admin === "super"){
        sql_query(" update {$write_table} set mb_id = '', wr_name = '관리자' where wr_id = '{$wr_id}' ");
        sql_query(" update {$g5['board_new_table']} set mb_id = '' where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' ");
    }
    else{
        sql_query(" update {$write_table} set mb_id = '', wr_name = '익명' where wr_id = '{$wr_id}' ");
        sql_query(" update {$g5['board_new_table']} set mb_id = '' where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' ");
        //글쓴이 구분 기능 시작
        sql_query(" update {$write_table} set wr_1 = '".$_SESSION['mb_id']."' where wr_id = '{$wr_id}' ");
        //글쓴이 구분 기능 종료
    }
    

 

}  else if ($w === 'u') {
    if($is_admin === "super"){
        sql_query(" update {$write_table} set mb_id = '', wr_name = '관리자' where wr_id = '{$wr['wr_id']}' ");
    }else{
        sql_query(" update {$write_table} set mb_id = '', wr_name = '익명' where wr_id = '{$wr['wr_id']}' ");
        //글쓴이 구분 기능 시작
        sql_query(" update {$write_table} set wr_1 = '".$_SESSION['mb_id']."' where wr_id = '{$wr_id}' ");
        //글쓴이 구분 기능 종료
    }
}
?>

[/code]

 

4. 같은 폴더 내 "write_comment_update.skin.php" 파일을 편집기로 열어주세요. 파일이 없다면 만들어주시면 됩니다. 그 이후 아래 내용을 추가해주세요. 위에서와 마찬가지로 익명과 글쓴이 구분 기능이 추가된 코드 입니다.

 

[code]

<?php
include('tmp.mb_id.head.skin.php');
if ($w === 'c') {
    if($is_admin === "super"){
        sql_query(" update {$write_table} set mb_id = '', wr_name = '관리자' where wr_id = '{$comment_id}' ");
        sql_query(" update {$g5['board_new_table']} set mb_id = '' where bo_table = '{$bo_table}' and wr_id = '{$comment_id}' ");
    }else{
        sql_query(" update {$write_table} set mb_id = '', wr_name = '익명' where wr_id = '{$comment_id}' ");
        sql_query(" update {$g5['board_new_table']} set mb_id = '' where bo_table = '{$bo_table}' and wr_id = '{$comment_id}' ");
        
        //글쓴이 구분 기능 시작
        $res = sql_query(" select wr_1 from {$write_table} where wr_id = '{$wr_id}' "); //wr_id를 이용 해 작성자 임시ID 추출
        $row = sql_fetch_array($res);
        if($_SESSION['mb_id'] === $row['wr_1']){ //현재 세션값과 여분필드 wr_1을 비교
            sql_query(" update {$write_table} set mb_id = '', wr_name = '글쓴이' where wr_id = '{$comment_id}' "); //맞다면 글쓴이로 변경
        }
        //글쓴이 구분 기능 종료
    }

}  else if ($w === 'cu') {
    if($is_admin === "super"){
        sql_query(" update {$write_table} set mb_id = '', wr_name = '관리자' where wr_id = '{$comment_id}' ");
    }else{
        sql_query(" update {$write_table} set mb_id = '', wr_name = '익명' where wr_id = '{$comment_id}' ");
    }
}

?>

[/code]

 

5. 수정하신 파일을 모두 업로드하신 후 세션을 정리하시면 적용됩니다.

 

6. 적용 결과화면

833136480_1624942620.7398.png

 

첨부파일

tmp.mb_id.head.skin.php (1.6 KB) 27회 2021-06-29 14:03
|

댓글 4개

오 감사합니다
좋아보입니다.
적용해보겠습니다
감사합니다 ^^
감사합니다
2021-12-26 (일) 20:34:21
글 삭제가 안되는데요. 원래 맞는건가요?
'자신의 글이 아니므로 삭제할 수 없습니다.' 라고 나옵니다.
운영자도 삭제를 못하네요
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,790건
+
제목 글쓴이 날짜 조회
21-07-25 조회 9,975
21-07-24 조회 8,148
21-07-23 조회 8,435
21-07-23 조회 6,799
21-07-16 조회 8,410
21-07-14 조회 7,099
21-07-14 조회 5,731
21-07-12 조회 6,376
21-07-12 조회 6,168
21-07-09 조회 6,837
21-07-07 조회 6,148
21-07-06 조회 6,645
21-07-05 조회 7,543
21-07-05 조회 7,267
21-07-01 조회 7,192
21-06-30 조회 6,395
21-06-29 조회 9,480
21-06-29 조회 8,024
21-06-29 조회 8,944
21-06-29 조회 7,842
21-06-27 조회 7,989
21-06-24 조회 9,136
21-06-24 조회 8,090
21-06-24 조회 6,815
21-06-23 조회 1.1만
21-06-22 조회 8,638
21-06-22 조회 5,805
21-06-20 조회 8,115
21-06-20 조회 6,044
21-06-19 조회 7,112