관리자가 게시글 글쓴이(id,작성자) 정보 변경하기 (2022-11-22 16:31) > 그누보드5 팁자료실

그누보드5 팁자료실

관리자가 게시글 글쓴이(id,작성자) 정보 변경하기 (2022-11-22 16:31) 정보

관리자가 게시글 글쓴이(id,작성자) 정보 변경하기 (2022-11-22 16:31)

본문

[주] 이후 강좌수정내용의 업데이트가 안될수 있습니다.

본 강좌의 최신업데이트는 https://www.happyjung.com/lecture/1709 에서 확인가능합니다.

가급적 동일한 내용을 유지하려고 노력하지만, 우선 작업은 위 링크입니다.

 

 

 

회원을 대신해서 글을 작성해줘야하는 경우가 있습니다.
이때 해당 게시글을 요청한 회원이 직접 관리하도록 하려면, phpMyAdmin 등의 도움을 받아야만 가능하죠?
이것을 게시판에서 직접 제어하는 방법입니다.


2017-03-12  update_writer.php : 변경저장 할때 이름 --> 닉네임 저장되도록 수정  
                 $row['mb_name'] 를 $row['mb_nick'] 으로 변경
2017-03-12  update_writer.php : 게시판 설정에서 이름 / 닉네임 확인후 업데이트 되도록 변경
2017-03-26  update_writer.php : 로직 개선
2021-03-03  쿼리 수정
2021-06-26  update_id.php 수정
2022-11-22  update_id.php 2줄, 26줄 문법 오류 수정


1. 그누보드5 / skin / board / 스킨 / view.skin.php  의 적절한 위치에 아래 코드를 추가합니다.
        <?php if($is_admin) { ?>
        <div class="tbl_frm01 tbl_wrap">
            <table>
                <tbody>
                <form name="update_id" action="<?php echo $board_skin_url; ?>/update_id.php" method="post" style="padding:0; margin:0;">
                <input type="hidden" name="bo_table" value="<?php echo $g5['write_prefix'] . $bo_table; ?>">
                <input type="hidden" name="REQUEST_URI" value="<?php echo $_SERVER['REQUEST_URI']; ?>">
                <input type="hidden" name="wr_id" value="<?php echo $wr_id; ?>">
                <tr>
                    <th scope="row">아이디 변경</th>
                    <td><input type="text" name="mb_id" style="width:120px;" class="frm_input" value="<?php echo $view['mb_id']; ?>"></td>
                    <th style="text-align:center;"><div class="btn_list"><input type="submit" value=" 저장 " class="btn_list"></div></th>
                </tr>
                </form>
                </tbody>
            </table>
        </div>
        <?php } ?>


2. 그누보드5 / skin / board / 스킨 / _common.php  파일 생성
<?php
include_once('../../../common.php');  // 그누보드5 /skin/board/스킨/_common.php 일때
//include_once('../../../../../common.php');  // 그누보드5/theme/테마/skin/board/스킨/_common.php 일때
?>


3. 그누보드5 / skin / board / 스킨 / update_id.php  파일생성
<?php
include_once("./_common.php");

if($is_admin) {
    $write_table = $g5['write_prefix'].$_POST['bo_table'];
    $wr_id = $_POST['wr_id'];
    $mb_id = $_POST['mb_id'];

    $sql = "select * from `{$g5['member_table']}` where mb_id='{$mb_id}' ";
    $qry = sql_query($sql);
    $row = sql_fetch_array($qry);
    
    if ($row['mb_id']) {
        if ($board['bo_use_name']==='1') { // 실명 사용시
            $wr_name = $row['mb_name'];
        } else {
            $wr_name = $row['mb_nick'];
        }
        sql_query("
            update `{$write_table}` set
                mb_id = '{$mb_id}',
                wr_name = '{$wr_name}',
                wr_email = '{$row['mb_email']}',
                wr_homepage = '{$row['mb_homepage']}'
            where wr_id = '{$wr_id}'
        ");
    }
}
?>
<script>
  location.href="<?php echo $_POST['REQUEST_URI']; ?>" ;
</script>

 

 

그누보드4용 : http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=33797

추천
1

댓글 15개

해당폴더에 분명 있는데..

The requested URL /skin/board/test/update_writer.php was not found on this server. 없다고 나오는 이유가 뭘까요?

 <input type="hidden" name="bo_table" value="<?php echo $g5['write_prefix'] . $bo_table; ?>">
이곳에서 <?php echo $g5['write_prefix'] .  삭제해서 $bo_table만 사용해보세요
전체 2,431 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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