답변 1개
b 게시판의 특정 글을 조회할 때,
해당 글 작성자가 a 게시판에서 남긴 wr_5 값을 함께 볼 수 있도록
b 게시판의 view.php 파일을 수정하여 a 게시판의 데이터를 조회/출력하면,
> > SQL JOIN 또는 별도 쿼리를 활용해
a 테이블에서 해당 회원의 정보를 가져와 b 게시판 뷰 페이지에 출력하면 될까요~
*bbs/view.php 파일을 열고, 해당 글을 조회하는 부분 아래에 다음 SQL을 추가
// 현재 보고 있는 글의 작성자 ID 가져오기
$member_id = $view['mb_id'];
// a 게시판에서 동일 작성자의 wr_5 값 가져오기
$sql = "SELECT wr_5 FROM g5_write_a WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
$extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '없음';
*view.skin.php 파일에서 원하는 위치에 다음을 추가하여 wr_5 값을 출력
<div class="extra-info">
<strong>추가 정보:</strong> <?php echo htmlspecialchars($extra_field_5); ?>
</div>
답변에 대한 댓글 10개
나와서요 글쓰기페이지에 보여주려면 어떻게해야할지 부탁드려봅니다.
글쓰기 페이지에서 a 게시판의 wr_5 값을 가져와 입력 폼에 표시하려면,
write.php에 추가적인 SQL 쿼리를 작성하여 해당 회원의 wr_5 값을 불러오고,
이를 write.skin.php에서 출력하는 방식으로 커스텀해 보시면 어떨까 싶습니다.
*write.php에서 현재 로그인한 사용자의 mb_id를 가져와
a 게시판(g5_write_a)에서 wr_5 값을 조회하도록 함.[code]
// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';
// a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
$extra_field_5 = '';
if ($member_id) {
$sql = "SELECT wr_5 FROM g5_write_a WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
$extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '';
}
[/code]
*write.skin.php에서 해당 값을 출력하여 사용자가 볼 수 있도록 함.[code]
<div class="extra-info">
<label for="extra_field_5">A 게시판 추가 정보:</label>
<input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($extra_field_5); ?>" readonly>
</div>
[/code]
알려주셔서 감사한데 이부분 한번만 ㅎㅎ
뷰페이지는 잘 출력됫는데 안되어서요
<?
// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';
// a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
$extra_field_5 = '';
if ($member_id) {
$sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
$extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '';
}
?>
<div class="extra-info">
<label for="extra_field_5">A 게시판 추가 정보:</label>
<input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($extra_field_5); ?>" readonly>
</div>
write.php에서 다음과 같이 디버깅 코드를 추가하여 실제 wr_5 값이 조회되는지 확인해보세요.
[code]
// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';
$extra_field_5 = '';
// 디버깅: 로그인한 사용자의 ID 확인
error_log("로그인한 사용자 ID: " . $member_id);
if ($member_id) {
// SQL 실행
$sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
// 디버깅: SQL 결과 확인
error_log("SQL 실행 결과: " . print_r($result, true));
$extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '없음';
}
// 디버깅: 최종 wr_5 값 확인
error_log("wr_5 값: " . $extra_field_5);
[/code]
※ 이상이 없다면~
*write.php
[code]
// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';
$extra_field_5 = '';
// ID가 존재하는 경우에만 실행
if (!empty($member_id)) {
// a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
$sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
// wr_5 값이 존재하면 가져오고, 없으면 '없음' 처리
$extra_field_5 = !empty($result['wr_5']) ? $result['wr_5'] : '없음';
}
// `write.skin.php`에서 사용할 수 있도록 변수 전달
$write['extra_field_5'] = $extra_field_5;
[/code]
*이제 write.skin.php에서 값을 출력해 보세요.
[code]
<div class="extra-info">
<label for="extra_field_5">A 게시판 추가 정보:</label>
<input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($write['extra_field_5']); ?>" readonly>
</div>
[/code]
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인