관리자가 게시글 글쓴이(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
댓글 15개
The requested URL /skin/board/test/update_writer.php was not found on this server. 없다고 나오는 이유가 뭘까요?
update_write라고 생각했지
update_writer일줄은 몰랐습니다.
그누보드5.3.3.3 아미나조합인데 변경된점이 있을까요?
<input type="hidden" name="bo_table" value="<?php echo $g5['write_prefix'] . $bo_table; ?>">
이곳에서 <?php echo $g5['write_prefix'] . 삭제해서 $bo_table만 사용해보세요
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4427 | ||
| 54 | 12년 전 | 7045 | ||
| 53 |
senseme
|
12년 전 | 9512 | |
| 52 | 12년 전 | 8962 | ||
| 51 |
takumi22
|
12년 전 | 8604 | |
| 50 |
마스보드포럼
|
12년 전 | 6836 | |
| 49 | 12년 전 | 5884 | ||
| 48 | 12년 전 | 7555 | ||
| 47 | 12년 전 | 7653 | ||
| 46 |
젬스브라운
|
12년 전 | 4817 | |
| 45 | 12년 전 | 6870 | ||
| 44 | 12년 전 | 8414 | ||
| 43 | 12년 전 | 6247 | ||
| 42 |
While
|
12년 전 | 9597 | |
| 41 | 12년 전 | 5355 | ||
| 40 |
푸른하늘3
|
12년 전 | 9664 | |
| 39 |
|
12년 전 | 6635 | |
| 38 | 12년 전 | 8989 | ||
| 37 |
|
12년 전 | 7581 | |
| 36 | 12년 전 | 5211 | ||
| 35 |
21세기소년
|
12년 전 | 6120 | |
| 34 |
rumi717
|
12년 전 | 6809 | |
| 33 |
|
12년 전 | 9737 | |
| 32 | 12년 전 | 9142 | ||
| 31 |
|
12년 전 | 8853 | |
| 30 | 12년 전 | 4847 | ||
| 29 |
|
12년 전 | 7369 | |
| 28 | 12년 전 | 7172 | ||
| 27 | 12년 전 | 6895 | ||
| 26 | 12년 전 | 6661 | ||
| 25 |
|
12년 전 | 5928 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기